QTdesigner -> QIcon -> Pfade inkorrekt?

Alles rund um die Programmierung mit Qt
Antworten
Mati
Beiträge: 66
Registriert: 4. Januar 2006 00:11

QTdesigner -> QIcon -> Pfade inkorrekt?

Beitrag von Mati »

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!
BartSimpson
Beiträge: 1379
Registriert: 6. November 2004 12:03
Kontaktdaten:

Beitrag von BartSimpson »

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.
Mati
Beiträge: 66
Registriert: 4. Januar 2006 00:11

Beitrag von Mati »

Danke für die Antwort...
könntest du das mit dem 2 mal laufen lassen vieleicht nochmal anders erklären?
Also ich erstelle die form mit dem designer der NICHT in kdevelop integriert ist und kopiere dann einfach die form ins projektverzeichnis über die existierende datei.

Danke für die Geduld.
BartSimpson
Beiträge: 1379
Registriert: 6. November 2004 12:03
Kontaktdaten:

Beitrag von BartSimpson »

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.
Antworten