Название: Qt 4.5.0-rc1 и QToolBar - не показывается без show(). Отправлено: Пантер от Февраль 10, 2009, 19:14 Есть главное окно (MainWindow), есть класс (MyClass). Делал раньше так:
Код Раньше все нормально показывалось и работало. Сегодня попробовал на Qt 4.5.0-rc1 и обломался, без MyClass->getToolBar()->show() тулбар не показывается. Глюк или фича? Название: Re: Qt 4.5.0-rc1 и QToolBar - не показывается без show(). Отправлено: pastor от Февраль 10, 2009, 19:35 1) От чего наследован QMyClass?
2) Покажи методе getToolBar() Название: Re: Qt 4.5.0-rc1 и QToolBar - не показывается без show(). Отправлено: Пантер от Февраль 10, 2009, 19:40 1. QWidget
2. :) Код
Код
Название: Re: Qt 4.5.0-rc1 и QToolBar - не показывается без show(). Отправлено: SABROG от Февраль 10, 2009, 20:52 Вообще если делается show() главному окну, то у всех дочерних виджетов должен вызываться show() автоматически, если стоит флаг setVisible(). В main.cpp show() вызывается? Возможно что и косяк, в консоль ругательств нет?
Название: Re: Qt 4.5.0-rc1 и QToolBar - не показывается без show(). Отправлено: pastor от Февраль 10, 2009, 22:47 Вобще какой-то странный подход ты выбрал. :) Мож пересмотришь логику работы с tool bar?
qtbarToolBar это child QMyClass. Ты экземпляру QMyClass гдето делаешь show()? Как вариант попробуй так: Код
Название: Re: Qt 4.5.0-rc1 и QToolBar - не показывается без show(). Отправлено: Пантер от Февраль 11, 2009, 07:29 Логику вроде правильная, в будущем QMyClass закину в плагин. Пока QMyClass создаю и закидываю на QTabWidget, его меню добавляю в меню, а тулбар на тулбар главного окна. Самое интересное, что раньше все было нормально и проблем не возникало... Тулбар устанавливается, если потом кликнуть в окне (вызвать меню тулбаров), то мой там светится, но чекбокс у него снят.
Код
Название: Re: Qt 4.5.0-rc1 и QToolBar - не показывается без show(). Отправлено: Dendy от Февраль 12, 2009, 09:34 Насколько я помню логика такая:
Вариант 1. Дочерние окна появляются скрытыми, чтобы избежать мелькания, так как родительское окно видимо. Им нужно явно вызывать show(), например как после троеточия: Код
Вариант 2. Дочерние окна появляются видимыми, так как родительсткое окно скрыто. Дополнительных телодвижений не требуется: Код
Название: Re: Qt 4.5.0-rc1 и QToolBar - не показывается без show(). Отправлено: Пантер от Февраль 12, 2009, 17:48 Тут интересно то, что сам виджет показывается нормально, а вот созданный в этом же классе тулбар создается, но не отображается. Ну и фиг с ним, мне не жалко show() вызвать. :)
|