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: 14493
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: 13004
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.
“Most people find the concept of programming obvious, but the doing impossible.” — Alan J. Perlis
Antworten