Seite 1 von 1

Fragen zum QWindowsXPStyle

Verfasst: 27. Oktober 2005 10:27
von Thorin
Hallo,

kann ich beim WindowsXP-Stil
  • die Höhe eines (selektierten) Menü-Items beeinflussen?
  • das Aussehen des "Anfassknopfes" zum Verschieben einer ToolBar anpassen?
  • den Rahmen um eine ToolBar unsichtbar machen / entfernen?
  • den ToolBar-Hintergrund mit einem (WindowsXP-typischen) Verlauf versehen?
Thorin

Verfasst: 27. Oktober 2005 10:50
von FlorianBecker
Das ist bestimmt alles möglich. Über welche Qt Version reden wir hier?

Zu Punkt eins, das ist mehr allgemein, als XPStyle spezifisch.
Zu allen anderen Punkten, wenn es dir nicht gefällt erbe einfach von der XPStyle Klasse und ändere die Dinge, die dir nicht gefallen.

Ist das denn XPStyle näher, was du vor hast?

Re: Fragen zum QWindowsXPStyle

Verfasst: 27. Oktober 2005 10:55
von macman
The QWindowsXPStyle class provides a Microsoft WindowsXP-like look and feel.

Warning: This style is only available on the Windows XP platform because it makes use of Windows XP's style engine.
Wenn Du einen eigenen Style haben willst, nimm QStyle.

Anmerkung: Ich persönlich mag es nicht wenn ein Programm anders aussieht, als ich es eingestellt habe. Sowas fliegt schnell wieder von der Platte.

Re: Fragen zum QWindowsXPStyle

Verfasst: 27. Oktober 2005 11:17
von Thorin
Über welche Qt Version reden wir hier?
Ich spreche über Version 4.01
Ist das denn XPStyle näher, was du vor hast?
Zu Punkt 1:
Wenn ich Menü-Items mit Icons erzeuge, ist die Höhe etwa 22 Pixel, was sehr fett wirkt. Andere Programme unter WindowsXP (auch die Microsoft eigenen) zeigen nicht dieses Verhalten.

Zu Punkt 2:
Ich habe Programme gesehen, die mit Qt entworfen wurden und für diesem Knopf statt der zwei vertikalen Linien kleine Kreise hatten, was eher dem WindowsXP L&F entspricht. Geht das nur über einen eigenen bzw. abgeänderten Style?

Zu Punkt 3:
Auch hier habe ich mit Qt entwickelte Programme gesehen, die den Rahmen um ToolBars nicht hatten.

Zu Punkt 4:
Normalerweise haben ToolBars in WindowsXP-Programmen einen Farbverlauf im Hintergrund.
Wenn Du einen eigenen Style haben willst, nimm QStyle.
Dann muss man aber das komplette L&F neu implementieren, oder?
Zu allen anderen Punkten, wenn es dir nicht gefällt erbe einfach von der XPStyle Klasse und ändere die Dinge, die dir nicht gefallen.
D.h. in diesem Fall kann man einzelne Dinge des XPStyles abändern?


Thorin

Eigener Style

Verfasst: 7. November 2005 19:37
von Thorin
Hallo,

ich habe einen eigenen von QWindowsXPStyle abgeleiteten Style erstellt, bei dem ich nur die Funktion zum Berechnen der Größe (sizeFromContents) für MenuItems überschrieben habe. Wenn ich diesen Style verwende, haben alle Menüs plötzlich statt dem normalen weißen Hintergrund einen grauen Hintergrund, obwohl ich an den Farben nichts verändert habe.

Hat jemand eine Idee, wie es zu dieser Farbverfälschung kommt?


Gruß, Thorin

Verfasst: 7. November 2005 22:02
von FlorianBecker
Sehr gute Frage, denn wenn du expliziet setStyle( "windowsxp" ); nimmst sind die Farben grau, wenn du es nicht so machst, sondern Qt selbst steuern lässt, ist der Hintergrund wie er sein soll, eben weiß.

Re: Eigener Style

Verfasst: 8. November 2005 18:08
von Thorin
Mit "Qt selbst steuern lassen" meinst du, dass Qt den QWindowsXPStyle automatisch beim starten des Programms setzt?

Also handelt es sich hierbei möglicherweise um eine Bug?


Gruß, Thorin

Verfasst: 8. November 2005 19:03
von FlorianBecker
Ja, den setzt Qt, wenn er vorhanden ist und auch genutzt wird, selbst. Gut möglich, dass das ein Bug ist, allerdings war das in Qt3 auch so.

Re: Eigener Style

Verfasst: 9. November 2005 19:25
von Thorin
Kennt jemand vielleicht eine Möglichkeit, das Problem zu umgehen?

Ansonsten kann man ja nie einen von QWindowsXPStyle abgeleiteten Style verwenden ohne das genannte Phänomen zu bekommen (es sei denn, man überschreibt die komplette Menü-Zeichenroutine).


Gruß, Thorin