Importazione di file di risorse per PyQt codice?

Ho visto Qt documentario e un sacco di domande meno simile a questo, Ma ancora non ho capito come devo fare.

Io non sono del tutto sicuro di come posso importare i file di risorse di codice Python, in modo pixmap viene visualizzato senza problemi.


Ho tutti i file nella stessa directory, ho creato qrc. file e compilato con: rcc -binary resources.qrc -o res.rcc per rendere il file di risorse.

Ho importato res_rcc ma pixmap sull’etichetta non si era ancora mostrato:

import res_rcc


Questo è quello che ho avuto nella mia qrc. file:

<RCC>
  <qresource prefix="newPrefix">
    <file>download.jpeg</file>
  </qresource>
</RCC>

Domanda:

Come posso importare i file di risorse in PyQt codice ? | Se le immagini sono nella stessa directory .qrc file di risorse, Non ho ancora bisogno di specificare il percorso completo?

InformationsquelleAutor ShellRox | 2016-04-17

 

2 Replies
  1. 14

    Per pyqt è necessario utilizzare pyrcc4, che è l’equivalente di rcc per python.

    pyrcc4 -o resources.py resources.qrc

    Questo genera il resources.py modulo che deve essere importato nel codice python in modo da rendere le risorse disponibili.

    import resources

    Per l’utilizzo della risorsa nel codice devi usare i “:/” prefisso:

    Esempio

    from PyQt4.QtCore import *
    from PyQt4.QtGui import *
    
    import resources
    
    pixmap = QPixamp(":/newPrefix/download.jpeg")

    Vedere Il PyQt4 Di Risorse Di Sistema e Qt Risorsa Di Sistema

    • non riuscivo ancora a vedere la pixmap, ho qualcosa di sbagliato all’interno di esso? Ho tutto nella stessa directory, quindi non sono del tutto sicuro, come faccio ad aggiungere le immagini alle risorse e quindi utilizzare nel codice.
    • Vedere le mie modifiche per utilizzare le risorse nel codice
    • Ancora non vedi, Ma è necessario che le preferenze di importazione?, Ho provato quelli e mi ha dato questo errore: File "project.py", line 7, in <module> class Window(QtGui.QMainWindow): NameError: name 'QtGui' is not defined
    • Heres che cosa ho fatto aggiungere in funzione “a casa”: def home(self): pic = QtGui.QLabel() pic.setGeometry(0, 0, 400, 300) pic.setPixmap(QtGui.QPixmap(":/images/download.jpeg")) self.show()
    • Se si utilizza da PyQt4.QtGui import *, è necessario utilizzare QLabel etc. senza QtGui. Se si utilizza from PyQt4 import QtGui, è necessario utilizzare QtGui.QLabel etc.
    • L’immagine ancora, non vedi, Questo è quello che ho modificato nel file qrc, prima della compilazione si <RCC> <qresource prefix="images"> <file>download.jpeg</file> </qresource> </RCC> e l’ho chiamata per pixmap, come questo: pic.setPixmap(QtGui.QPixmap(":/images/download.jpeg")) @Fabio
    • Sei sicuro che pyrcc4 termina senza errori? La risultante resources.py deve essere un bel file di grandi dimensioni.
    • Sì, è generato il file di stampa, senza nulla in console, È qualcosa di sbagliato con la mia casa codice di funzione?
    • Cerchiamo di continuare questa discussione in chat.

  2. 7

    In PyQt5, dovremmo scrivere nel comand line

    pyrcc5 -o resources.py resource/resources.qrc

    Perché abbiamo bisogno di generare un resource.py per importare nel codice. Ora siamo in grado di tipo di

    import resources

    nel nostro codice python

Lascia un commento