Здравствуйте, гость ( Вход | Регистрация )
anater | Дата 28.12.2009, 11:51 |
Всем спасибо! По итогу сделал как:
|
|
Litkevich Yuriy | Дата 25.12.2009, 17:54 |
anater, при работе с QMainWindow, ты всегда создаёшь виджет, который затем помещаешь в главное окно. Т.е. тебе лучше создать отдельный класс со своими виджетами, например, MainWidget, а затем в конструкторе главного окна: где w - указатель на MainWidget, член-класса главного окнаЛибо, вместо строчки (непосредственно про твой код): this->setLayout(layout); написать:
|
|
anater | Дата 25.12.2009, 17:41 |
Потому что у QMainWindow есть свой Layout, который ему нужен и переустанавливать его своим не стоит. Сделай свой виджет, в котором будет все твои виджеты, настрой в нем свой layout и установи этот виджет методом void QMainWindow::setCentralWidget ( QWidget * widget ). Спасибо! А как на примере выше изложенного кода это будет выглядеть? |
|
BRE | Дата 25.12.2009, 17:36 |
Потому что у QMainWindow есть свой Layout, который ему нужен и переустанавливать его своим не стоит. Сделай свой виджет, в котором будет все твои виджеты, настрой в нем свой layout и установи этот виджет методом void QMainWindow::setCentralWidget ( QWidget * widget ). |
|
anater | Дата 25.12.2009, 17:26 |
Добрый день. Проблема в следующем: При создании менеджера размещения в конструкторе менеджер не отрабатывает. Выдается в отладке такая штука. QWidget::setLayout: Attempting to set QLayout "" on qarm "", which already has a layout Уж что только не делал не работает и все тут. Рекомендации прочитать мануал и погуглить не нужны. Имеется код main
хейдер
код класса
|
|
Просмотр темы полностью (откроется в новом окне) | |
Текстовая версия | Сейчас: 28.3.2024, 21:47 |