QFileDialog - Bilddatei als pixmap verwenden

Python und das Qt-Toolkit, erstellen von GUIs mittels des Qt-Designers.
Antworten
23z86
User
Beiträge: 4
Registriert: Montag 22. März 2021, 19:03

Hallo, ihr Lieben :)

Ich habe das folgende Problem:
Nach dem Auswählen einer Bildatei soll diese als pixmap in einem QLabel angezeigt werden.

Soweit meine Bemühung:

Code: Alles auswählen

    def uploadimg(self):
        image = QFileDialog.getOpenFileName(self, "Open a File...", "/home/")
        # die Variable file soll die Bilddatei beinhalten
        # self.label.setPixmap(file)
Leider funktioniert mein Ansatz - wie vermutet - nicht.
Hätte jemand einen soliden Ansatz?

Liebe Grüße
__deets__
User
Beiträge: 14545
Registriert: Mittwoch 14. Oktober 2015, 14:29

Na du musst schon ein QPixmap Objekt erzeugen, wenn die setPixmap Methode das will. Und das hat einen Filenamen-basierten konstruktor: https://doc.qt.io/qt-5/qpixmap.html#QPixmap-2
23z86
User
Beiträge: 4
Registriert: Montag 22. März 2021, 19:03

Problemchen gelöst :)

Code: Alles auswählen

    def uploadimg(self):
        file = QFileDialog.getOpenFileName(self, "Open a File...", "/home/", "Image files (*.jpeg *.jpg *.gif)")
        path = str(file[0])
        self.label.setPixmap(QPixmap(path))
Benutzeravatar
__blackjack__
User
Beiträge: 14192
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@23z86: Was soll der `str()`-Aufruf? Und der Code behandelt den Fall das der Benutzer den Dialog abbricht statt ein Bild auszusuchen nicht.
“Every thinking person fears nuclear war and every technological nation plans for it. Everyone knows
it's madness, and every country has an excuse.” — Carl Sagan, Cosmos, Episode 13: Who Speaks for Earth?
Antworten