[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions_content.php on line 1014: Undefined array key 3
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions_content.php on line 1014: Undefined array key 3
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions_content.php on line 1014: Undefined array key 3
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions_content.php on line 1014: Undefined array key 3
qtforum.de • Fenstericon im QMainWindow
Seite 1 von 2

Fenstericon im QMainWindow

Verfasst: 2. Oktober 2005 14:36
von BartSimpson
Hallo, ich habe mit dem Dessigner ein QMainWindows gebaut. Das Icon für dieses kommt aus einer Resoursen Datei. Nur leider macht eintweder der Dessigner oder der uic was falsch es entsteht immer ein falscher Header.
statt HauptBasis->setWindowIcon(QIcon(QString::fromUtf8(":/Bilder/Symbol.png")));
wird immer
HauptBasis->setWindowIcon(QIcon(QString::fromUtf8(":/Bilder/Bilder/Symbol.png")));
erzeugt. So das man das jedesmal per Hand ändern muss. Wo liegt der Bug??

Re: Fenstericon im QMainWindow

Verfasst: 4. Oktober 2005 07:23
von macman
Dessigner? Ist das ein Tick von Dir oder warum schreibst Du das konsequent falsch? Und was das überflüssige 'Bilder' angeht, nimm einfach den Prefix 'Bilder' aus der Resource raus. Du hast so einmal den Prefix 'Bilder', plus 'Bilder' aus dem Pfad.

Verfasst: 4. Oktober 2005 10:31
von BartSimpson
Der Prefix ist drinn, weil es noch andere Resourchen darin gibt.
Da sowas ja laut Doku gehen soll, muss ja eins von beiden nicht ganz richtig funktionieren. Entweder der Dessigner oder der uic??

Verfasst: 4. Oktober 2005 10:34
von FlorianBecker
Der DESIGNER, nicht DESSIGNER legt zu jeder Ressource einen Prefix an, beides funktioniert hervorragend.

Deine Eingabe ist richtig und deine Ausgabe ist richtig. Du sagst du willst etwas anderes haben, was aber primär weder mit dem uic noch mit dem DESIGNER zusammenhängt.

Verfasst: 4. Oktober 2005 10:43
von BartSimpson
Der Designer liest ja korrekt die Resourcen Datei ein. Nur und man kann das Icon wählen. Nur nacher im ui.h steht denn Mist:(

Verfasst: 4. Oktober 2005 10:45
von FlorianBecker
Also, aus obigem Beispiel:
HauptBasis->setWindowIcon(QIcon(QString::fromUtf8(":/Bilder/Bilder/Symbol.png")));
kommt aus dem UIC, wenn dein Prefix Bilder ist.

DAS IST RICHTIG!!!

Das muss so sein. Denn Prefix prefix wird zu :/$prefix$/RESSOURCE

Ich verstehe nicht, was da falsch sein soll.

Verfasst: 4. Oktober 2005 10:53
von BartSimpson
Aber genau so wird denn das Icon nicht angeigt. Erst wenn man dann per Hand die ui.h wieder ändert geht es. Es scheint, das der Designer damit Probleme hat, wenn man in der Resurcendatei die Alias Finktion benutzt. Denn dann zerstört der Designer auch machmal die Datei:(

Verfasst: 4. Oktober 2005 10:56
von FlorianBecker
Kann ich nicht bestätigen und ist auch nicht so bei 4.0.0 und 4.0.1, denn das mache ich ständig.

Verfasst: 4. Oktober 2005 11:20
von BartSimpson
bei mir werden vom Designer unter 4.0.1 die Dateien regelmäßig zerlegt sobald die Aliasfunktion benutzt wird. Bei 4.0.0 war es auch so.

Verfasst: 4. Februar 2008 13:42
von Allroad
so, das Problem mit dem WindowIcon habe ich nun auch...: ich versuch meinem QMainWindow ein Icon zu verpassen, der Compliler meckert nichts (auch nicht wenn ich einen falschen File-Name angib), aber ein Icon wir nicht angezeigt... ratlos...!

Code: Alles auswählen

<!DOCTYPE RCC><RCC version="1.0">
<qresource>
    <file>Img/up.png</file>
    <file>Img/down.png</file>
    <file>Img/left.png</file>
    <file>Img/right.png</file>
    <file>Img/icon.png</file>    // <-- das hier soll mein WindowIcon sein 
</qresource>
</RCC> 


...und

Code: Alles auswählen

 
MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
{
...
setWindowIcon(QIcon(QString::fromUtf8(":/Img/icon.png")));
...
}
das icon.png habe ich an einer anderen Stelle im Programm geladen (als Pixmap) und da hat's funktioniert...!

Verfasst: 5. Februar 2008 09:15
von Allroad
hmm... hat keiner ein Tipp für mich? Ich hab das Icon sogar im Menü einfügen können, ich versehe nicht wieso das nicht als WindowIcon funktioniert...!

Verfasst: 5. Februar 2008 09:54
von macman
Was soll da für ein Tipp kommen? Ich nutze folgendes und das funktioniert.

Code: Alles auswählen

setWindowIcon(QIcon(":/images/docicon.png"));
Lass das fromUtf8 weg, ist das Einzige was mir dazu einfällt.

Verfasst: 5. Februar 2008 13:23
von Allroad
macman hat geschrieben:

Code: Alles auswählen

setWindowIcon(QIcon(":/images/docicon.png"));
hatte ich am Anfang auch so... hat aber auch nicht funk. Naja, muss wohl damit leben!

Verfasst: 6. Februar 2008 15:25
von Allroad
So, nun bin ich doch schlauer geworden: ich hab mein Code mit nachhause genmmen, und es da unter Windows kompiliert... und siehe da, es funktioniert! Ich kann endlich mein WindowIcon sehen!

Also: anscheinend funktioniert die setWindowIcon()- Funktion nur unter Windows... (?)!

Verfasst: 7. Februar 2008 08:57
von Flachkoepper
Ich hab unter Linux keine Probleme mit dem WindowIcon, zumindest in QT 4.3.2