Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: L.Marvell от Январь 04, 2006, 16:37



Название: WFlags и Qt 4.1.0
Отправлено: L.Marvell от Январь 04, 2006, 16:37
Для того, чтобы у окна не было кнопки на таскбаре использовал Qt::FramelessWindowHint. В Qt 4.0.0 и 4.0.1 все работало хорошо, но вот в Qt 4.1.0 данный трюк не помогает. Это глюк или что-то они там поменяли, кто в курсе?


Название: WFlags и Qt 4.1.0
Отправлено: Steven_Orko от Январь 04, 2006, 18:49
Приведи код. Возможно, что ты устанавливаешь стиль, а после тебя тоже кто-то его заново устанавливает. У меня так было, когда я создавал MDI приложение и его ChildWindow.


Название: WFlags и Qt 4.1.0
Отправлено: L.Marvell от Январь 04, 2006, 19:05
Хм... собственно даже не знаю сколько кода приводить... весь многовато будет... разве что вцепить на какой нить сайт (тут кто-то уже использовал какой-то сайт для таких целей).
в конструкторе виджета используется вот такая строчка:
setWindowFlags(Qt::FramelessWindowHint | Qt::WindowStaysOnTopHint);
У меня сейчас стоят обе версии Qt 4.0.1 и 4.1.0. Если компилить в первой, все ОК, если во второй, то работает, как я уже сообщал.


Название: WFlags и Qt 4.1.0
Отправлено: Steven_Orko от Январь 04, 2006, 20:29
Я сейчас проверил с QDialog, все работает, с QMainWindow тоже... так трудно ответить на вопрос...
Цитировать

Это глюк или что-то они там поменяли, кто в курсе?

Троли много че поменяли, но это осталось также. Кстати, если будешь использовать MDI, то после того, как свернуть ChildWindow и попробывать его заново востановить вылетает ошибка... И у них в примерах тоже...


Название: WFlags и Qt 4.1.0
Отправлено: L.Marvell от Январь 04, 2006, 20:56
хм... я сделал через QWidget, пробовал через QMainWindow тот же прикол.... Сегодня буду разбираться еще раз, если чего, найду куда выложить сорсы.


Название: WFlags и Qt 4.1.0
Отправлено: Zmey от Январь 05, 2006, 12:05
Код можно постить сюда http://rafb.net/paste/ , но он будет жить только 24 часа.


Название: WFlags и Qt 4.1.0
Отправлено: L.Marvell от Январь 05, 2006, 13:33
Вобщем запостил сюда http://www.badongo.com/file.php?file=JustClock__2006-01-05_JustClock-0.3.55.tar.bz2 архив с сорсами.


Название: WFlags и Qt 4.1.0
Отправлено: Dendy от Январь 05, 2006, 14:33
Ось вам код вікна без кнопки на таскбарі:

Код:
#include <QApplication>
#include <QWidget>



int main( int argc, char ** argv )
{
QApplication app( argc, argv );

QWidget * parentWidget = new QWidget;
QWidget * myTopLevelWidgetWithoutBarButton = new QWidget( parentWidget, Qt::Window );
myTopLevelWidgetWithoutBarButton->show();

return app.exec();
}


Ще раджу встановити флаг: QApplication::quitOnLastWindowClosed = false, бо перше зачинене вікно зачинить вашу програму, тому що myTopLevelWidgetWithoutBarButton не рахується за топ-левел відчинене вікно.


Название: WFlags и Qt 4.1.0
Отправлено: L.Marvell от Январь 05, 2006, 14:50
Хм... не зовсім зрозумів, та попробую. Хоча мені також цікаво чому WFlags не спрацьовує (принаймні у мене).

добавлено спустя 7 минут:

 Извините за небольшой офтоп, но раз уж здесь запостил сорсы, то сразу скажу. Кто скачал и скомпилил прогу, посмотрите на диалог выбора цвета с включенным ХР стилем (не в проге, а в винде) и сравните черный и белый цвет.