setPixmap zeichnet nicht in label
-
Gulpinator
- Beiträge: 4
- Registriert: 23. März 2009 13:12
setPixmap zeichnet nicht in label
hallo zusammen,
habe ein mainwindow mit designer erstelt und will nun ein bild in ein label ziehen. leider macht er das aber nicht. code in der hauptfenster.cpp ist:
QImage img("test.png");
QLabel murks;
murks.setPixmap(QPixmap::fromImage(img));
murks.show();
woran könnte es liegen?
vielen dank und viele grüße!
habe ein mainwindow mit designer erstelt und will nun ein bild in ein label ziehen. leider macht er das aber nicht. code in der hauptfenster.cpp ist:
QImage img("test.png");
QLabel murks;
murks.setPixmap(QPixmap::fromImage(img));
murks.show();
woran könnte es liegen?
vielen dank und viele grüße!
Mach mal:
So kannst du checken ob dein Image geladen wurde. Evtl mal die Ressourcen in der Doku ansehen. Tippe da mal drauf. Ansonsten kannste mi kompletten Pfad probieren. Falls es daran nicht liegt...stöer mal im Forum
Hätte fast Plugins geschrieben allerdings ist es ja ein png...
Code: Alles auswählen
QImage img;
bool bres = img.load("tst.png");
qDebug() << bres? "Image geladen":"Image konnte nicht geladen werden";
-
Gulpinator
- Beiträge: 4
- Registriert: 23. März 2009 13:12
habe jetzt im designer ein label murks erstellt und den code ansonsten unverändert gelassen (die deklaration natürlich entfernt), ergebnis:
Fehler: Abfrage des Elementes »show« in »((Taschenrechner*)this)->Taschenrechner::<anonymous>.Ui::MainWindow::<anonymous>.Ui_MainWindow::murks«, das vom Nicht-Klassentyp »QLabel*« ist
make: *** [Hauptfenster.o] Fehler 1
Fehler: Abfrage des Elementes »show« in »((Taschenrechner*)this)->Taschenrechner::<anonymous>.Ui::MainWindow::<anonymous>.Ui_MainWindow::murks«, das vom Nicht-Klassentyp »QLabel*« ist
make: *** [Hauptfenster.o] Fehler 1
Das schaut ziemlich - komisch - aus.
Zeig bitte mehr Code.
Wichtig sind die Header, in denen du Tachenrechner bzw Hauptfenster definierst. Außerdem die Implementierung des Konstruktors und die ganze Methode, in der du das Pixmap setzen willst.
Am allerbesten wäre es, wenn du dein Projekt mit allen Dateien in ein ZIP packst und hier anhängst, dann muss man am wenigsten raten.
Zeig bitte mehr Code.
Wichtig sind die Header, in denen du Tachenrechner bzw Hauptfenster definierst. Außerdem die Implementierung des Konstruktors und die ganze Methode, in der du das Pixmap setzen willst.
Am allerbesten wäre es, wenn du dein Projekt mit allen Dateien in ein ZIP packst und hier anhängst, dann muss man am wenigsten raten.
Du hast jetzt einen QLabel Pointer, dementsprechend musst du im Code oben statt
eben
schreiben.
Code: Alles auswählen
murks.funktion()
Code: Alles auswählen
murks->funktion()
-
Gulpinator
- Beiträge: 4
- Registriert: 23. März 2009 13:12
pfid du hast mir den tag gerettet. das hatte ich vor lauter kopf übersehen, so ein unsinn. so klappt es natürlich. danke an alle!
habe aber gleich das nächste problemchen!
void Taschenrechner::icaodienst() {
QImage img("icao-ausschnitt.bmp");
gurks->setPixmap(QPixmap::fromImage(img));
gurks->show();
}
void Taschenrechner::karte_zeigen() {
QProcess process;
process.start("./icaocut map.bmp icao-ausschnitt.bmp");
QTimer::singleShot(5500, this, SLOT(icaodienst()));
}
zieht
QProcess: Destroyed while process is still running.
QPixmap::fromImage: Cannot convert a null image
nach sich. eine idee was los ist? danke im voraus!
habe aber gleich das nächste problemchen!
void Taschenrechner::icaodienst() {
QImage img("icao-ausschnitt.bmp");
gurks->setPixmap(QPixmap::fromImage(img));
gurks->show();
}
void Taschenrechner::karte_zeigen() {
QProcess process;
process.start("./icaocut map.bmp icao-ausschnitt.bmp");
QTimer::singleShot(5500, this, SLOT(icaodienst()));
}
zieht
QProcess: Destroyed while process is still running.
QPixmap::fromImage: Cannot convert a null image
nach sich. eine idee was los ist? danke im voraus!
Punkt 1: verwende endlich code tags!Gulpinator hat geschrieben:pfid du hast mir den tag gerettet. das hatte ich vor lauter kopf übersehen, so ein unsinn. so klappt es natürlich. danke an alle!
habe aber gleich das nächste problemchen!
void Taschenrechner::icaodienst() {
QImage img("icao-ausschnitt.bmp");
gurks->setPixmap(QPixmap::fromImage(img));
gurks->show();
}
void Taschenrechner::karte_zeigen() {
QProcess process;
process.start("./icaocut map.bmp icao-ausschnitt.bmp");
QTimer::singleShot(5500, this, SLOT(icaodienst()));
}
zieht
QProcess: Destroyed while process is still running.
QPixmap::fromImage: Cannot convert a null image
nach sich. eine idee was los ist? danke im voraus!
Punkt 2: wie lange Objekte, die du in einer Methode auf dem Stack erzeugst, leben, wurde dir oben schon erklärt.
Kurz: Der QProcess wird beim beenden der Methode zerstört (was dir übrigens auch die Fehlermeldung sagt).
-
Gulpinator
- Beiträge: 4
- Registriert: 23. März 2009 13:12