Russian Qt Forum
Октябрь 01, 2024, 12:38 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: WFlags и Qt 4.1.0  (Прочитано 7770 раз)
L.Marvell
Гость
« : Январь 04, 2006, 16:37 »

Для того, чтобы у окна не было кнопки на таскбаре использовал Qt::FramelessWindowHint. В Qt 4.0.0 и 4.0.1 все работало хорошо, но вот в Qt 4.1.0 данный трюк не помогает. Это глюк или что-то они там поменяли, кто в курсе?
Записан
Steven_Orko
Гость
« Ответ #1 : Январь 04, 2006, 18:49 »

Приведи код. Возможно, что ты устанавливаешь стиль, а после тебя тоже кто-то его заново устанавливает. У меня так было, когда я создавал MDI приложение и его ChildWindow.
Записан
L.Marvell
Гость
« Ответ #2 : Январь 04, 2006, 19:05 »

Хм... собственно даже не знаю сколько кода приводить... весь многовато будет... разве что вцепить на какой нить сайт (тут кто-то уже использовал какой-то сайт для таких целей).
в конструкторе виджета используется вот такая строчка:
setWindowFlags(Qt::FramelessWindowHint | Qt::WindowStaysOnTopHint);
У меня сейчас стоят обе версии Qt 4.0.1 и 4.1.0. Если компилить в первой, все ОК, если во второй, то работает, как я уже сообщал.
Записан
Steven_Orko
Гость
« Ответ #3 : Январь 04, 2006, 20:29 »

Я сейчас проверил с QDialog, все работает, с QMainWindow тоже... так трудно ответить на вопрос...
Цитировать

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

Троли много че поменяли, но это осталось также. Кстати, если будешь использовать MDI, то после того, как свернуть ChildWindow и попробывать его заново востановить вылетает ошибка... И у них в примерах тоже...
Записан
L.Marvell
Гость
« Ответ #4 : Январь 04, 2006, 20:56 »

хм... я сделал через QWidget, пробовал через QMainWindow тот же прикол.... Сегодня буду разбираться еще раз, если чего, найду куда выложить сорсы.
Записан
Zmey
Гость
« Ответ #5 : Январь 05, 2006, 12:05 »

Код можно постить сюда http://rafb.net/paste/ , но он будет жить только 24 часа.
Записан
L.Marvell
Гость
« Ответ #6 : Январь 05, 2006, 13:33 »

Вобщем запостил сюда http://www.badongo.com/file.php?file=JustClock__2006-01-05_JustClock-0.3.55.tar.bz2 архив с сорсами.
Записан
Dendy
Гость
« Ответ #7 : Январь 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 не рахується за топ-левел відчинене вікно.
Записан
L.Marvell
Гость
« Ответ #8 : Январь 05, 2006, 14:50 »

Хм... не зовсім зрозумів, та попробую. Хоча мені також цікаво чому WFlags не спрацьовує (принаймні у мене).

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

 Извините за небольшой офтоп, но раз уж здесь запостил сорсы, то сразу скажу. Кто скачал и скомпилил прогу, посмотрите на диалог выбора цвета с включенным ХР стилем (не в проге, а в винде) и сравните черный и белый цвет.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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