QWindowsStyle zeigt nicht das typisch graue Layout an

Verschiedenes zu Qt
Antworten
Matze84
Beiträge: 11
Registriert: 19. April 2009 13:59

QWindowsStyle zeigt nicht das typisch graue Layout an

Beitrag von Matze84 »

Hallo,

möchte in meiner Anwendung das typische Windows Grau verwenden.
Im QT Designer funktioniert dies, indem ich auf Vorschau ->
Windows Stil klicke. Nun erscheint - egal welche Darstellung ich im Windows XP verwende, das typische Grau.

In meiner Applikation funktioniert dies leider nicht.
Ich verwende den Designer nicht.

Ein Auszug aus der main Methode:

Code: Alles auswählen

#include <QtGui/QWindowsStyle>
int main( int argc, char *argv[] )
{
    QApplication app(argc, argv);
    MainWindow mw;
    app.setStyle(new QWindowsStyle);
    mw.showMaximized();
    mw.show();
    return app.exec();
}
Nun bekomme ich zwar rechteckige Buttons, nur die Farbe stimmt noch nicht - es ist kein typisches Grau sondern eher das XP Sandgrau

Es wäre schön wenn mir da jemand weiterhelfen könnte!

Vielen Dank,
Gruß Matthias
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Willst Du nicht lieber QWindowsXPStyle?

Abgesehen davon - warum den Style hart codieren?
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
Matze84
Beiträge: 11
Registriert: 19. April 2009 13:59

Beitrag von Matze84 »

Hallo,

möchte auf einem Windows XP Betriebsystem den typischen Windows Grau Style.

Warum hardcodiert - das is nur ein Code Auszug in dem das Problem dargestellt werden sollte
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Wenn ich unter XP mein Qt-Programm aufrufe hat es automatisch den XP-Style - deshalb meine Frage...
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
Matze84
Beiträge: 11
Registriert: 19. April 2009 13:59

Beitrag von Matze84 »

möchte das ganz normale Windows 98 like Grau
in meiner Applikation ;-)
franzf
Beiträge: 3114
Registriert: 31. Mai 2006 11:15

Beitrag von franzf »

Matze84
Beiträge: 11
Registriert: 19. April 2009 13:59

Beitrag von Matze84 »

im Stylesheet jede Klasse beschreiben?
oder wie meinst du?
wieso funktioniert es im Designer?

Gruß Matthias
franzf
Beiträge: 3114
Registriert: 31. Mai 2006 11:15

Beitrag von franzf »

Der link war auf setPalette().
Wennes bei dir nicht funktionirt, musst du halt die palette setznen, dass alles grau ist.

kannst natürlich auch im designer-code schauen, wie das da geht.
Matze84
Beiträge: 11
Registriert: 19. April 2009 13:59

Beitrag von Matze84 »

was is dann der Unterschied von
QWindowsXPStyle zu QWindowsStyle
wenn ich immer die XP Farben habe??

verwendet der Designer nicht diese Dateien ?
zeichnet der alles selber?

das "Selberzeichnen" möchte ich eigentlich vermeiden
franzf
Beiträge: 3114
Registriert: 31. Mai 2006 11:15

Beitrag von franzf »

Du sollst die nicht selber zeichnen, sondern nur die Palette ändern!! Und das hat auch nix mit StyleSheet zu tun!

Ich hab jetzt einfach mal den Assistant aufgemacht, und innerhalb <1Minute das Style-example gefunden. Genau DAS solltest du dir jetzt anschauen!
TIP:
*) void WidgetGallery::changeStyle(const QString &styleName)
*) void WidgetGallery::changePalette()

Da hat mich der Post hier mehr Zeit gekostet, als das Example zu finden und auszuprobieren...

Grüße
Franz
Antworten