Russian Qt Forum
Октябрь 02, 2024, 01:44 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Окно программы, при разном разрешении  (Прочитано 7424 раз)
kadr
Гость
« : Ноябрь 17, 2009, 09:42 »

Привет всем у меня вот возникла такая проблема, сделал программку, работал на 19 дюймовом монике с разрешением 1280х1024, сейчас поставил программу на другой компьютер, а там разрешение 800х600, и программа, а точнее окно программы не умещается на экране, как можно сделать так что бы окно масштабировалось само в зависимости от разрешения компьютера, при меньшем разрешении уменьшалось и наоборот при большем разрешении!
Записан
Павел_F.
Гость
« Ответ #1 : Ноябрь 17, 2009, 09:55 »

Все элементы выстраивай лайаутами, контролируя размеры( чтоб влезли на маленькое окно).
Вот разрешение экрана:
Код:
  x = QApplication::desktop()->screen( 0)->width();
  y = QApplication::desktop()->screen( 0)->height();
В зависимости от него задавай минимальный/максимальный размер окна.
« Последнее редактирование: Ноябрь 17, 2009, 09:57 от Павел_F. » Записан
kadr
Гость
« Ответ #2 : Ноябрь 18, 2009, 09:12 »

Все элементы выстраивай лайаутами, контролируя размеры( чтоб влезли на маленькое окно).
Вот разрешение экрана:
Код:
  x = QApplication::desktop()->screen( 0)->width();
  y = QApplication::desktop()->screen( 0)->height();
В зависимости от него задавай минимальный/максимальный размер окна.
Попробовал сделать так, выдает ошибку: invalid use of member (did you forget the `&' ?)
Записан
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #3 : Ноябрь 18, 2009, 09:15 »

ну псмотри в документацию, может и правда забыл &
Записан

Юра.
Павел_F.
Гость
« Ответ #4 : Ноябрь 18, 2009, 09:20 »

У меня этот код работает.
Может в инклюдах забыл QApplication и QDesktopWidget?
Записан
Авварон
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3260


Просмотр профиля
« Ответ #5 : Ноябрь 18, 2009, 10:24 »

обычно такое пишет когда забываешь () у функции: screen( 0)->width;
Записан
kadr
Гость
« Ответ #6 : Ноябрь 18, 2009, 10:35 »

У меня этот код работает.
Может в инклюдах забыл QApplication и QDesktopWidget?
Да нет у меня они подключены, а вот в проект случаем ничего не надо подключать?
Записан
kadr
Гость
« Ответ #7 : Ноябрь 18, 2009, 10:36 »

x и y должны быть какого типа int?
Записан
kadr
Гость
« Ответ #8 : Ноябрь 18, 2009, 10:38 »

x = QApplication::desktop()->screen( 0)->width(); Вот как я написал!
Записан
Павел_F.
Гость
« Ответ #9 : Ноябрь 18, 2009, 10:38 »

проект qmake мне сделал, сам ничего не добавлял. х,у у меня инты.
Записан
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #10 : Ноябрь 18, 2009, 10:39 »

>>x и y должны быть какого типа int?
посмотри в документации, на те функции, которые используешь.

П.С. 1,5 часа потерял на вопросы в форуме, вместо 15 мин. в Асистенте.
Записан

Юра.
kadr
Гость
« Ответ #11 : Ноябрь 18, 2009, 10:40 »

Вывод компилятора
mainwindow.cpp: In constructor `MainWindow::MainWindow(QWidget*)':
mainwindow.cpp:67: error: invalid use of member (did you forget the `&' ?)
mainwindow.cpp: In member function `void MainWindow::on_pushButton_clicked()':
Записан
Павел_F.
Гость
« Ответ #12 : Ноябрь 18, 2009, 11:33 »

Ну раз так то дай твой код. У меня это прекрасно работает.
По фотографии гадать я не умею.
Записан
kadr
Гость
« Ответ #13 : Ноябрь 18, 2009, 12:09 »

Все отбой, все спасибо, оказывается он воспринимает x, y, когда они объявлены как глобальные переменные!
« Последнее редактирование: Ноябрь 18, 2009, 12:14 от kadr » Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.116 секунд. Запросов: 23.