Alles rund um die Programmierung mit Qt
reinki0013
Beiträge: 174 Registriert: 11. November 2008 09:37
Wohnort: AUT
Beitrag
von reinki0013 » 21. September 2009 12:13
Hallo zusammen!
also ich möchte in meinem QWidget gerne ein *.png-Datei einbinden...
Ich hab jetzt auch schon alles durchgeschaut, aber ich finde nichts...
Ich hätts so probiert, funktioniert aber nicht:
Code: Alles auswählen
QImage img("Test.png");
ui.label->setPixmap(QPixmap::fromImage(img));
aber das geht nicht, weiß echt net wie das funzt...
wäre toll wenn ihr mir weiterhelfen könnt...
danke
lg
upsala
Beiträge: 3946 Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:
Beitrag
von upsala » 21. September 2009 12:17
Und das Bild existiert in dem Pfad, in dem du suchst? Warum wandelst du eigentlich von QImage nach QPixmap und läst das QPixmap nicht direkt laden?
reinki0013
Beiträge: 174 Registriert: 11. November 2008 09:37
Wohnort: AUT
Beitrag
von reinki0013 » 21. September 2009 12:22
upsala hat geschrieben: Und das Bild existiert in dem Pfad, in dem du suchst? Warum wandelst du eigentlich von QImage nach QPixmap und läst das QPixmap nicht direkt laden?
ja also ich habs auch schon mit einem anderen pfad probiert, also die direkte pfad angabe...
wenn ich das so probiere
gehts auch net...
ich versteh das überhaupt net, wie kann ich das bloß im widget anzeigen lassen?
AuE
Beiträge: 918 Registriert: 5. August 2008 10:58
Beitrag
von AuE » 21. September 2009 12:44
Code: Alles auswählen
QPixmap pix;
if (pix.load("pixmap.png")
label->setPixmapmap(pix);
else
qDebug() << "How to load smth. that isn't there?"
reinki0013
Beiträge: 174 Registriert: 11. November 2008 09:37
Wohnort: AUT
Beitrag
von reinki0013 » 21. September 2009 13:11
AuE hat geschrieben: Code: Alles auswählen
QPixmap pix;
if (pix.load("pixmap.png")
label->setPixmapmap(pix);
else
qDebug() << "How to load smth. that isn't there?"
also wenn ich das so mache, dann steht "TextLabel" im Label drinnen und das Bild (.png) wird trotzdem nicht angezeigt...
ich bekomme nämlich bei "load" false zurück...
was könnte da das problem sein?
lg
Christian81
Beiträge: 7319 Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:
Beitrag
von Christian81 » 21. September 2009 13:28
MfG Christian
'Funktioniert nicht' ist keine Fehlerbeschreibung
reinki0013
Beiträge: 174 Registriert: 11. November 2008 09:37
Wohnort: AUT
Beitrag
von reinki0013 » 21. September 2009 13:51
ja das hab ich jetzt gemacht...
es is trotzdem so, dass diese datei nicht geladen wird, also "false" zurückkommt...
ich versteh das einfach überhaupt nimma...
habs jetzt zur sicherheit auch mal in den "debug"-ordner vom projekt kopiert, ändert aber auch nichts...
egal ob "Test.png" oder "D:\Projektmappe\Test.png", es kann nicht geladen werden, aber warum?
Christian81
Beiträge: 7319 Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:
Beitrag
von Christian81 » 21. September 2009 13:53
D:\Projektmappe\Test.png ? Das hoffe ich doch wohl nicht...
Und wenn man QCoreApplication::applicationDirPath() benutzt funktioniert es auch.
MfG Christian
'Funktioniert nicht' ist keine Fehlerbeschreibung
Mani99
Beiträge: 244 Registriert: 15. April 2009 10:46
Wohnort: München
Beitrag
von Mani99 » 21. September 2009 14:02
Ich würde das ganze so machen:
Code: Alles auswählen
QString img_path = QString(QCoreApplication::applicationDirPath());
img_path.append(QDir::separator());
img_path.append("Test.png");
applicationDirPath liefert dir warscheinlich schon den pfad komplett zurück, aber wenn du noch in unterverzeichnisse willst, solltest du QDir::separator() verwenden, der gibt dir den nativen separator des betriebssystems zurück!
reinki0013
Beiträge: 174 Registriert: 11. November 2008 09:37
Wohnort: AUT
Beitrag
von reinki0013 » 21. September 2009 14:05
Christian81 hat geschrieben: D:\Projektmappe\Test.png ? Das hoffe ich doch wohl nicht...
Und wenn man QCoreApplication::applicationDirPath() benutzt funktioniert es auch.
ich kann dir aber sagen, dass es vollkommen egal ist welchen pfad ich nehme...
hab als beispiel mal "C:\Test.png" genommen, also einfach die Datei dort hinkopiert und er kann sie trotzdem nicht öffnen... ?
Christian81
Beiträge: 7319 Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:
Beitrag
von Christian81 » 21. September 2009 14:08
Ok nochmal - wenn Du wirklich C:\Test.png genommen hast würde der Thread in C++-Grundlagen wesentlich besser passen...
MfG Christian
'Funktioniert nicht' ist keine Fehlerbeschreibung
reinki0013
Beiträge: 174 Registriert: 11. November 2008 09:37
Wohnort: AUT
Beitrag
von reinki0013 » 21. September 2009 14:26
Christian81 hat geschrieben: Ok nochmal - wenn Du wirklich C:\Test.png genommen hast würde der Thread in C++-Grundlagen wesentlich besser passen...
natürlich habe ich
geschrieben.
Mein Programm läuft unter Windows, es hat auch nicht mit
funktioniert.
Christian81
Beiträge: 7319 Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:
Beitrag
von Christian81 » 21. September 2009 14:42
Und was sagt QImageReader::supportedImageFormats() ?
MfG Christian
'Funktioniert nicht' ist keine Fehlerbeschreibung
reinki0013
Beiträge: 174 Registriert: 11. November 2008 09:37
Wohnort: AUT
Beitrag
von reinki0013 » 21. September 2009 14:50
Christian81 hat geschrieben: Und was sagt QImageReader::supportedImageFormats() ?
Code: Alles auswählen
list [15]
(
{"bmp" size=3},{"gif" size=3},{"ico" size=3},{"jpeg" size=4},{"jpg" size=3},{"mng" size=3},{"pbm" size=3},{"pgm" size=3},{"png" size=3},{"ppm" size=3}, ...) QList<QByteArray>
+ [0] {"bmp" size=3} QByteArray
+ [1] {"gif" size=3} QByteArray
+ [2] {"ico" size=3} QByteArray
+ [3] {"jpeg" size=4} QByteArray
+ [4] {"jpg" size=3} QByteArray
+ [5] {"mng" size=3} QByteArray
+ [6] {"pbm" size=3} QByteArray
+ [7] {"pgm" size=3} QByteArray
+ [8] {"png" size=3} QByteArray
+ [9] {"ppm" size=3} QByteArray
+ [10] {"svg" size=3} QByteArray
+ [11] {"tif" size=3} QByteArray
+ [12] {"tiff" size=4} QByteArray
+ [13] {"xbm" size=3} QByteArray
+ [14] {"xpm" size=3} QByteArray
Christian81
Beiträge: 7319 Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:
Beitrag
von Christian81 » 21. September 2009 14:56
png ist dabei. Wenn C:/Test.png wirklich existiert dann ist es wohl kaputt. Was anderes kann ich mir nicht mehr vorstellen.
MfG Christian
'Funktioniert nicht' ist keine Fehlerbeschreibung