Style unter KDE4
Style unter KDE4
Hallo,
nach der Neuinstallation von Kubuntu 10.04 sieht mein Qt Programm, das ich grade entwickel, nicht mehr nach KDE aus.
Ich hatte weder vor der Neuinstallation noch hinterher explizit ein Style im Programm gesetzt, also würde ich doch erwarten, dass das Standard-Theme (also Oxygen) verwendet wird.
Ich hab jetzt allerdings den QTCreator Build vom Feburar, vorher war glaube ich Build vom November.
Ich würde den Style ja auch explizit setzen (meinetwegen beim Aufruf), aber in der Hilfe finde ich keinen Oxygen Style.
Gruß
Mr.Green
nach der Neuinstallation von Kubuntu 10.04 sieht mein Qt Programm, das ich grade entwickel, nicht mehr nach KDE aus.
Ich hatte weder vor der Neuinstallation noch hinterher explizit ein Style im Programm gesetzt, also würde ich doch erwarten, dass das Standard-Theme (also Oxygen) verwendet wird.
Ich hab jetzt allerdings den QTCreator Build vom Feburar, vorher war glaube ich Build vom November.
Ich würde den Style ja auch explizit setzen (meinetwegen beim Aufruf), aber in der Hilfe finde ich keinen Oxygen Style.
Gruß
Mr.Green
Styles sind Plugins. Diese werden zur Laufzeit geladen, deshalb wirst du keinen Header/Doku finden. Desweiteren können Plugins jederzeit hinzugefügt werden, was bei OxygenStyle der Fall ist.
Schau dir mal "QApplication::setStyle()" an. Übergib den string "oxygen".
Ansonsten kannst du mit qtconfig den Style einstellen. Setz ihn auf "Desktop Settings (default)", dann übernimmt er die Einstellung aus systemsettings.
Wenn du aber ganz viel Pech hast, laufen bei dir 2 verschiedene Qt-Installationen, die binär inkompatibel sind, resp. Oxygen wurde mit einer neueren Qt-Version gebaut als dein SDK-Qt. Dann wirst du das Plugin nicht laden können. Verwendest du zum Programmieren denn Qt aus einem Repository, oder hast du dir manuell das sdk installiert?
Schau dir mal "QApplication::setStyle()" an. Übergib den string "oxygen".
Ansonsten kannst du mit qtconfig den Style einstellen. Setz ihn auf "Desktop Settings (default)", dann übernimmt er die Einstellung aus systemsettings.
Wenn du aber ganz viel Pech hast, laufen bei dir 2 verschiedene Qt-Installationen, die binär inkompatibel sind, resp. Oxygen wurde mit einer neueren Qt-Version gebaut als dein SDK-Qt. Dann wirst du das Plugin nicht laden können. Verwendest du zum Programmieren denn Qt aus einem Repository, oder hast du dir manuell das sdk installiert?
Ich habe versucht, "oxygen" an setStyle zu übergeben, ändert nichts.
Mit qtconfig kann ich zwar die Einstellungen auf "Desktop Settings" setzen, das ändert aber auch nichts.
Ich hatte mir zuerst den Creator von Nokia direkt runtergeladen (Build Februar 2010).
Nach deiner Antwort hatte ich auch noch den Creator aus den Paketquellen installiert, aber bei beiden klappt es nicht so.
Mit qtconfig kann ich zwar die Einstellungen auf "Desktop Settings" setzen, das ändert aber auch nichts.
Ich hatte mir zuerst den Creator von Nokia direkt runtergeladen (Build Februar 2010).
Nach deiner Antwort hatte ich auch noch den Creator aus den Paketquellen installiert, aber bei beiden klappt es nicht so.
-
- Beiträge: 7319
- Registriert: 26. August 2004 14:11
- Wohnort: Bremen
- Kontaktdaten:
Oxygen ist ein KDE-Style, kein Qt-Style. Also nichts mit QApplication::setStyle().
Qt-Applikationen benutzen auch den KDE-Style wenn die gleichen Libraries benutzten werden afaik. Bei Dir ist es nicht der Fall - es werden die Libs vom QtCreator benutzt -> man LD_LIBRARY_PATH
Qt-Applikationen benutzen auch den KDE-Style wenn die gleichen Libraries benutzten werden afaik. Bei Dir ist es nicht der Fall - es werden die Libs vom QtCreator benutzt -> man LD_LIBRARY_PATH
MfG Christian
'Funktioniert nicht' ist keine Fehlerbeschreibung
'Funktioniert nicht' ist keine Fehlerbeschreibung
-
- Beiträge: 7319
- Registriert: 26. August 2004 14:11
- Wohnort: Bremen
- Kontaktdaten:
-
- Beiträge: 7319
- Registriert: 26. August 2004 14:11
- Wohnort: Bremen
- Kontaktdaten:
Wieso funktioniert qtconfig, wenn mir der Eintrag zur oxygen im LD_LIBRARY_PATH fehlen soll?
Sofern ich das verstehe, greift dann auch dort der DL_OPEN-Mechanismus, oder?
Die oxygen.so wird angeblich von meinem Programm auch geladen:
Sofern ich das verstehe, greift dann auch dort der DL_OPEN-Mechanismus, oder?
Die oxygen.so wird angeblich von meinem Programm auch geladen:
Code: Alles auswählen
9097: file=/usr/lib/kde4/plugins/styles/oxygen.so [0]; needed by /home/christian/Programme/qtsdk-2010.02/qt/lib/libQtCore.so.4 [0]
9097: file=/usr/lib/kde4/plugins/styles/oxygen.so [0]; generating link map
9097: dynamic: 0x07df1d84 base: 0x07d7d000 size: 0x00075678
9097: entry: 0x07d8a8f0 phdr: 0x07d7d034 phnum: 6
Re: Style unter KDE4
Hey Mr.Green and dear admin
I logged in here for a similar issue. But I got my options. Thanks for the useful thread. gold whatsApp
I logged in here for a similar issue. But I got my options. Thanks for the useful thread. gold whatsApp
Re: Style unter KDE4
Hallo,Mr.Green hat geschrieben: ↑30. Mai 2010 11:18 Hallo,
nach der Neuinstallation von Kubuntu 10.04 sieht mein Qt Programm, das ich grade entwickel, nicht mehr nach KDE aus.
Ich hatte weder vor der Neuinstallation noch hinterher explizit ein Style im Programm gesetzt, also würde ich doch erwarten, dass das Standard-Theme (also Oxygen) verwendet wird.
Ich hab jetzt allerdings den QTCreator Build vom Feburar, vorher war glaube ich Build vom November.
Ich würde den Style ja auch explizit setzen (meinetwegen beim Aufruf), aber in der Hilfe finde ich keinen Oxygen Style.
Gruß
Mr.Green
nach der Neuinstallation von Kubuntu 10.04 könnte es sein, dass das Standard-Theme nicht richtig erkannt wird. Stellen Sie sicher, dass die Oxygen-Themenpakete installiert sind.
Um den Oxygen-Stil explizit zu setzen, können Sie den folgenden Code zu Ihrem Programm hinzufügen: QApplication::setStyle("Oxygen");
Wenn "Oxygen" nicht verfügbar ist, überprüfen Sie die Qt-Installation und die in Qt Creator verwendeten Kit-Einstellungen. Es kann auch hilfreich sein, die Qt-Version zu aktualisieren, falls dies noch nicht geschehen ist. Viel Erfolg bei der Entwicklung!