Hallo,
ich habe mittels QTDesigner ein Fenster gebastelt und in mein Projekt eingebunden. Passt alles und läuft auch. In der Toolbar und in der Menubar habe ich Icons platziert als QActions natürlich. Nun ist es so dass in dem Projekt unter kdevelop die Icons nicht sichtbar sind.
Der Grund dafür ist: In der von qmake erstellten ui_*.h datei die aus der *.ui datei erzeugt wird sind die Pfade zu den Icons die aus einer Q_INIT_RESOURCE Datei ausgelesen werden NICHT mit ":/..." angegeben also ohne den Doppelpunkt wie er nötig wäre und ohne das slash!
Warum?
Auch wenn in dieser Datei (ui_*.h) die Pfade manuell mit dem :/
hinzufüge also bearbeite passiert nichts! (Außerdem würde das bis zum nächsten erstellen eh wieder weg sein was also nichts bringen würde).
Ich habe das problem dadurch gelöst dass ich in der Klasse die diese Base-class durch das setupUI erstellt zusätzlich nochmal actionSave->setIcon(":/...");
eingetragen habe für jedes Icon, damit der Pfad hier korrekt ausgelesen wird.
Habe ich irgendwo was falsch gemacht im Designer oder warum klappt das nicht?
Danke euch für eure Hilfe!
QTdesigner -> QIcon -> Pfade inkorrekt?
-
BartSimpson
- Beiträge: 1379
- Registriert: 6. November 2004 12:03
- Kontaktdaten:
Das liegt weniger am uic. Sondern ehr am Designer. Der hat leider so seine liebe Not mit Resurcen. Denn wenn du z.b. mit alias arbeitst, geht es auch grünlich schief. Da hilft es denn nur 2 mal das Programm übersetzen zu lassen. Und vor dem 2. lauf sed auf die ui.h'er loszulassen. Das soll aber erst in Qt 4.2 behoben werden.
-
BartSimpson
- Beiträge: 1379
- Registriert: 6. November 2004 12:03
- Kontaktdaten:
Das 2 mal laufen lassen ist vön nöten, da beim 1. druchlauf erst die ui.h erstellt werden. Die müssen denn per sed geändert werden. Dann kommt der 2. compilerlauf, wo die geänderten ui.h benutzt werden. Dann sind deine Icons da. Das muss denn jedesmal wiederholt werden, wenn du das Designerformula änders.