Seite 1 von 1

Frameless Window mit System Menü unter Windows

Verfasst: 5. Februar 2007 11:28
von FlorianBecker
Hi,

ich habe ein Widget und möchte es ohne Rahmen darstellen, aber einen Eintrag in der Taskleiste anzeigen und dort das normale Systemmenü haben.

Ich habe viele Kombinationen probiert, und nicht das richtige gefunden unter Qt 4.2.2. Hier mal mein Quelltext, so stellt er schonmal ein Rahmenloses Fenster mit Eintrag in der Taskleiste dar. Und alle weiteren Parameter, wollen Ihm jetzt wieder einen Rahmen aufdrücken, mir fehlt aber nur noch das Menü! Jemand eine Idee?

Code: Alles auswählen

  QWidget *widget = new QWidget;
  widget -> setWindowFlags( Qt::Window | Qt::FramelessWindowHint );
  widget -> resize( QSize( 640, 480 ) );
  widget -> show();

Verfasst: 7. Februar 2007 21:48
von dhcase
versuchs mal hiermit

Code: Alles auswählen

widget -> setWindowFlags( Qt::Window | Qt::FramelessWindowHint | Qt::WindowSystemMenuHint );
evtl. kannst du auch das Qt::Window weglassen, müsste ich jetzt aber testen...

Verfasst: 14. März 2007 12:29
von dhcase
gibts dafuer jetzt eine loesung? unter 4.1.x hat das funktioniert und unter 4.2.x geht es nicht mehr... jedes weitere flag neben Qt::FramelessWndowHint erstellt wieder einen rahmen...

Verfasst: 14. März 2007 13:25
von FlorianBecker
Genau das ist nämlich der Punkt.

Verfasst: 19. März 2007 15:57
von dhcase

Verfasst: 21. März 2007 22:13
von dhcase
das ging schnell
Qt Tasktracker hat geschrieben:Description:
In Qt 4.2 adding another flag together with Qt::FramelessWindowHint brings back the frame around the window. This used to work in Qt 4.1.

Resolution note :
It makes sense to combine Qt::FramelessWindowHint and Qt::WindowSystemMenuHint on Windows where the context menu is also visible on the task bar. Not allowing this combination was a regression against 4.1.
Setting other hints such as MinMaxButtonHint or ContextHelpButtonHint will still result in the Qt::FramelessWindowHint being ignored since the frame is required to support these features.

History:
2007-03-19 15:02 - Entry created: Task status changed to 'Open', Resolution set to 'Pending', Version found set to '4.2.3', Version for fix set to 'Not scheduled', Priority changed to 'No Priority'
2007-03-20 09:10 - Priority changed to '1 - Highest'
2007-03-20 09:10 - Version for fix set to '4.3.0 (Next Minor Release)'
2007-03-21 18:13 - Resolution set to 'Fixed'
2007-03-21 18:13 - Task status changed to 'Closed'

Verfasst: 22. März 2007 09:09
von upsala
Die sind immer so schnell...