Название: Изменение StatusBar в дизайнере Отправлено: mikl2002 от Март 01, 2005, 14:27 Как изменить StatusBar в qt дизайнере, например добавить labels?
Или это можно делать только в run-time? Название: Изменение StatusBar в дизайнере Отправлено: Racheengel от Март 01, 2005, 15:19 никак ИМХО
Название: Изменение StatusBar в дизайнере Отправлено: Admin от Март 01, 2005, 15:24 да никак
а было бы круто напихать туда всяких ComboBox :) Название: Изменение StatusBar в дизайнере Отправлено: Racheengel от Март 01, 2005, 15:59 надо свой дизайнер делать :)
Название: Изменение StatusBar в дизайнере Отправлено: Admin от Март 01, 2005, 17:01 свой делать - подход не правильный
лучше этот доработать например у меня в линуксе после закрытия дизайнер всегда падает Название: Изменение StatusBar в дизайнере Отправлено: Zigmar от Март 01, 2005, 22:04 Цитата: "Admin" например у меня в линуксе после закрытия дизайнер всегда падает А посмотреть callstack и послать багрепорт? Кстати, я никогда про такое не слышал. Название: Изменение StatusBar в дизайнере Отправлено: Admin от Март 01, 2005, 22:35 лениво
баг то не критический мне он жить не мешает!!! Название: Re: Изменение StatusBar в дизайнере Отправлено: Hellenna от Март 02, 2005, 00:13 Цитата: "mikl2002" Как изменить StatusBar в qt дизайнере, например добавить labels? Или это можно делать только в run-time? QStatusBar::addWidget(...) насколько помню, можно добавить практически все что угодно. Название: Re: Изменение StatusBar в дизайнере Отправлено: mikl2002 от Март 02, 2005, 06:05 Цитата: "Hellenna" Цитата: "mikl2002" Как изменить StatusBar в qt дизайнере, например добавить labels? Или это можно делать только в run-time? QStatusBar::addWidget(...) насколько помню, можно добавить практически все что угодно. Это только в Run-time как я уже писал :( Название: Изменение StatusBar в дизайнере Отправлено: Racheengel от Март 02, 2005, 12:45 Цитата: "Admin" свой делать - подход не правильный лучше этот доработать например у меня в линуксе после закрытия дизайнер всегда падает да "фирменный" дизайнер кривоват и не очень юзабелен, это же ужо обсуждалось :) если переделывать - так с нуля. Название: Re: Изменение StatusBar в дизайнере Отправлено: Cyrax от Декабрь 18, 2007, 22:43 Все QLabel'ы, которые должны добавляться в QStatusBar - где они должны создаваться ?
Согласно идеологии построения приложения, все виджеты объявляются и создаются (методом setupUi) в файле ui_имякласса.h, который создаётся uic-ом. В QtDesigner'е создать QLabel'ы на QStatusBar'е невозможно (можно их разместить только на centralwidget'е). Если эти QLabel'ы вручную дописать в файл ui_имякласса.h (расположить на QStatusBar'е), то при пересборке проекта uic перезапишет этот файл. И поскольку в файле имякласса.ui этих Label'ов нет, то они будут утеряны. Напрашивается, что объявлять и создавать эти QLabel'ы нужно в у себя в классе имякласса.h/cpp, который uic не трогает. Получается, что виджеты расположены в разных файлах... Название: Re: Изменение StatusBar в дизайнере Отправлено: Пантер от Декабрь 19, 2007, 12:38 :-\ А просто в классе, наследуемом от ui создать лэйбу нельзя? И закинуть на статусбар нельзя? Неужели все должно в Дизайнере делаться???
Название: Re: Изменение StatusBar в дизайнере Отправлено: Cyrax от Декабрь 20, 2007, 11:49 Цитировать А просто в классе, наследуемом от ui создать лэйбу нельзя? Это dep_mainWindow в файле ui.dep.h:Цитировать ... class Ui_dep_mainWindow { ... } namespace Ui { class dep_mainWindow: public Ui_dep_mainWindow { // добавляем свои label'ы }; } // namespace Ui #endif // UI_DEP_H После работы uic'а этот файл перезапишется... со всеми нашими label'ами... Название: Re: Изменение StatusBar в дизайнере Отправлено: Cyrax от Декабрь 20, 2007, 12:28 3-й день уже со статусбаром... Ужас.
С помощью addPermanentWidget добавляю label, который появляется справа и не перекрывается основным текстом statusbar'а. 1. Почему QStatusBar не наследует QFrame. Ну невозможно ведь у QWidget'а рамку установить, кроме как самому рисовать. Мне бы сверху линию провести, чтобы отделить statusbar от centralwidget. 2. После добавления addPermanentWidget справа от него появляется вертикальная линия - разделитель, который ставит сам statusbar. Т.к. это не label'овский frame, то как его убрать ? 3. Допустим, нужно поставить вертикальный разделитель слева от labe'а. Устанавливаю setFrameStyle(QFrame::VLine) - вертикальная линия появляется в центре label'а. Как её разместить на левой границе label'а ? 4. Как получить доступ с стандартной надписи на statusbar'е, кроме как showMessage и clearMessage ? Для более гибкого управления надписью, например, слева разместить bitmap или свои label'ы, которые не будут перекрываться этой стандартной надписью... Название: Re: Изменение StatusBar в дизайнере Отправлено: Пантер от Декабрь 20, 2007, 12:33 Во как... От статус бара никогда не просил такого. А не проще ли будет взять QToolBar или простую панель и зафигачить ее в низ окна?
Название: Re: Изменение StatusBar в дизайнере Отправлено: Cyrax от Декабрь 20, 2007, 13:05 Цитировать От статус бара никогда не просил такого. Ну так в любой виндовой программе именно такие statusbar'ы и реализованы. Ничего сам не изобретаю...Цитировать А не проще ли будет взять QToolBar или простую панель и зафигачить ее в низ окна? Можно, только придётся самому реализовывать вывод сообщений при фокусировке на пункты меню + другую функциональность, реализованную в statusbar'е.А что - в стандартном statusbar'е нельзя сверху линию провести ? Кроме как самому рисовать. Нельзя убрать вертикальный ограничитель справа от перманентного label'а ? з.ы. немного оффтопный вопрос: QFrame::VLine всегда только по центру label'а ? Название: Re: Изменение StatusBar в дизайнере Отправлено: ритт от Декабрь 20, 2007, 20:16 чтобы разделителей не было, задай статусбару setStyleSheet("QStatusBar::item {border-style:none;}");
верхний разделитель - почти так же у меня есть похожий статус бар на тот, о котором ты говоришь - могу поделиться только для него нет плагина к дизайнеру |