Te recomendamos que revises esta solución en un entorno controlado antes de enviarlo a producción, un saludo.
Solución:
Para pyqt, debe usar pyrcc4, que es el equivalente de rcc para python.
pyrcc4 -o resources.py resources.qrc
Esto genera el módulo resources.py que debe importarse en el código python para que los recursos estén disponibles.
import resources
Para usar el recurso en su código, debe usar “: /” prefix:
Ejemplo
from PyQt4.QtCore import *
from PyQt4.QtGui import *
import resources
pixmap = QPixamp(":/newPrefix/download.jpeg")
Ver El sistema de recursos PyQt4 y El sistema de recursos Qt
En PyQt5, deberíamos escribir en la línea de comandos
pyrcc5 -o resources.py resource/resources.qrc
Porque necesitamos generar un resource.py para importar en el código. Ahora podemos escribir
import resources
en nuestro código python
Además de las maravillosas respuestas anteriores, si también desea la posibilidad de configurar el icono desde dentro de QtCreator (en lugar de tener que decir setWindowIcon(QIcon('://images/app_icon.ico'))
línea en el código), haces esto:
pyrcc5 -o resources_rc.py resources.qrc
cd ui
pyuic5 -o dialog.py dialog.ui
(Tenga en cuenta que pyuic5
importa automáticamente resources_rc
y no resources
por alguna razón; de ahí el nuevo nombre especificado arriba)
Donde te has asegurado de que:
...
...
aparece aproximadamente allí (entre tabstops
y connections
) en tus dialog.ui
Archivo. Creo que para llegar allí automáticamente, puede crear un proyecto ficticio de C ++ y agregar sus archivos .ui al proyecto ficticio, luego agregar un nuevo archivo Qt Resource al proyecto. Cuando haya terminado, puede eliminar todo dejando los archivos .ui y el archivo .qrc. Si por casualidad copia resources.qrc
a otro directorio, luego cerrando y volviendo a abrir el dialog.ui
El archivo le preguntará dónde está la nueva ubicación.
Ahora puede configurar los recursos desde el Propiedad explorador en QtCreator: windowIcon > Choose Resource > (click on the root) > (your files should show up now) > (select app_icon.ico)
.
Acabo de comprobar una recién creada mainwindow.ui
, si abre el archivo en Edición de texto modo en Qt Creator te muestra dónde está el
talón es. Simplemente inserte allí (usando algún otro programa) Por alguna razón, al abrir el archivo .ui recién creado en Notepad ++ no se mostraba.
Al cerrar y volver a abrir archivos, debe cerrar el archivo (no “Recargar”, no funciona) y abrirlo nuevamente. Luego, la raíz del recurso en el cuadro de diálogo “agregar imagen desde recursos” no estará vacía.
Eres capaz de añadir valor a nuestra información asistiendo con tu experiencia en las reseñas.