Russian Qt Forum
Июня 09, 2025, 00:09 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: Размещение centralWidget в середине MainWindow!  (Прочитано 2837 раз)
Racot
Гость
« : Июня 14, 2012, 21:30 »

Мне нужно чтобы при запуске моего приложения главное окно разворачивалось на весь экран, а centralWidget перемещался на середину главного окна.Я сделал так:

(в креаторе у меня создан MainWindow с разрешением 1024х768))

    current_screen = QApplication::desktop()->screenGeometry();      //  определил разрешение экрана
    main_w->setGeometry(current_screen);                                    //  установил это разрешение окну
    GeoCW=main_w->centralWidget()->geometry();                         //  взял координаты центрального виджета
    GeoCW.setX((main_w->geometry().height()-768)/2);                   //  установил координату X на середину
    GeoCW.setY((main_w->geometry().width()-1024)/2);                  //  установил координату Y на середину
    main_w->centralWidget()->setGeometry(GeoCW);                      //   применил к центр. видж.


Что не получилось:
1)  при установке разрешению окну (setGeometry) за пределы вылез window titel.
Я нашел что есть разница между  frameGeometry() и geometry() но не более.
2)центральный виджет никуда не передвинулся.

Помогайте знатоки!
 
Записан
Alex Custov
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2063


Просмотр профиля
« Ответ #1 : Июня 14, 2012, 21:37 »

1) почему бы не использовать showMaximized()? Развернуть на весь экран только с помощью функций move()/resize() не получится, т.к. resize() не учитывает оконный фрейм
2) central widget объединён в layout, его нельзя двигать.
« Последнее редактирование: Июня 14, 2012, 21:52 от Alex Custov » Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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