Skip to content

Python3 - PyQt5 QIcon

Python3
  • Ich habe für mein Projekt, die Icons in einem Ordner abgelegt und von dort benutzt. Viel Aufwand, weil man die erst suchen muss, in den Ordner kopieren usw.

    Gestern beim Dokumentation lesen bin ich mal wieder über was gestolpert, was ich testen musste 😉

    Alt

    #----JSON Menu ----#
            loadJSON = QAction(QIcon.('icons/reload.svg'), 'Load File', self)
            loadJSON.triggered.connect(BackupList.load_json)
            loadJSON.setShortcut('Ctrl+L')
            fileMenu.addAction(loadJSON)
    

    Neu

    #----JSON Menu ----#
            loadJSON = QAction(QIcon.fromTheme('reload'), 'Load File', self)
            loadJSON.triggered.connect(BackupList.load_json)
            loadJSON.setShortcut('Ctrl+L')
            fileMenu.addAction(loadJSON)
    

    Damit lädt das Programm die Icons des gewählten Themes des Betriebssystemes. Bei mir ist das aktuell

    7e021618-77af-4da9-9d2d-470b4f546e59-image.png

    und sieht so aus

    fd84fdb6-d928-4f99-998d-fccb00536657-image.png

    Wenn man jetzt das Theme wechselt, merkt man das viele Icons nicht vorhanden sind 😞 Ok, mal weiterlesen, wie man das löst...

    Es gibt eine Liste mit alle Icon Bezeichnungen -> https://specifications.freedesktop.org/icon-naming-spec/icon-naming-spec-latest.html

    Und unter LinuxMint Cinnamon findet man die Icons unter z.B. /usr/share/icons/Mint-Y/actions/16

  • Die Suchpfade findet man hiermit

    print(QIcon.themeSearchPaths())
    

    Ausgabe

    ['/home/frank/.icons', '/usr/share/cinnamon/icons', '/var/lib/flatpak/exports/share/icons', '/usr/share/icons', ':/icons']
    

  • Python3 - pyqtSignal

    Python3
    1
    0 Stimmen
    1 Beiträge
    96 Aufrufe
    Niemand hat geantwortet
  • Restic UI - Documentation

    Restic UI
    1
    +0
    0 Stimmen
    1 Beiträge
    293 Aufrufe
    Niemand hat geantwortet
  • Python3 - Popen und seine Geheimnisse ;)

    Python3
    1
    0 Stimmen
    1 Beiträge
    198 Aufrufe
    Niemand hat geantwortet
  • Python3 - Umzug nach Fedora 34

    Python3
    1
    0 Stimmen
    1 Beiträge
    176 Aufrufe
    Niemand hat geantwortet
  • Python3 - Global variable 'widget' undefined at the module level

    Python3
    3
    0 Stimmen
    3 Beiträge
    371 Aufrufe
    FrankMF
    Kein globalen Variablen mehr im Projekt Das Widget ließ sich relativ einfach erledigen. Vorher #----QPlainTextEdit ----# layout = QVBoxLayout() widget = QTextEdit() widget.setReadOnly(True) widget.setLayout(layout) setCentralWidget(widget) Nachher #----QPlainTextEdit ----# layout = QVBoxLayout() self.widget = QTextEdit() self.widget.setReadOnly(True) self.widget.setLayout(layout) self.setCentralWidget(self.widget) Aufruf dann nicht mehr mit # UI widget.setHtml("") sondern mit # UI mainWin.widget.setHtml("") Problem erledeigt und hoffentlich auch verstanden
  • Python3 - PyQt5 Layout

    Python3
    1
    +1
    0 Stimmen
    1 Beiträge
    176 Aufrufe
    Niemand hat geantwortet
  • Python3 - virtuelle Entwicklungsumgebung

    Angeheftet Python3
    3
    0 Stimmen
    3 Beiträge
    346 Aufrufe
    FrankMF
    Nach Systemwechsel erneut Probleme. Hier noch mal aufgelistet. Aufpassen, das kein venv Ordner vorhanden ist! Neu anlegen! python3 -m venv venv Dann meckert mein Linux Mint Cinnamon The virtual environment was not created successfully because ensurepip is not available. On Debian/Ubuntu systems, you need to install the python3-venv package using the following command. apt install python3.8-venv You may need to use sudo with that command. After installing the python3-venv package, recreate your virtual environment. Failing command: ['/home/frank/Restic_UI_Produktiv/restic-ui-public/venv/bin/python3', '-Im', 'ensurepip', '--upgrade', '--default-pip'] Ok, das ist einfach apt install python3.8-venv python3 -m venv venv Danach aktivieren source venv/bin/activate Installation von PyQt5 (venv) frank@frank-MS-7C37:~/Restic_UI_Produktiv/restic-ui-public$ pip3 install PyQt5 Collecting PyQt5 Downloading PyQt5-5.15.4-cp36.cp37.cp38.cp39-abi3-manylinux2014_x86_64.whl (8.3 MB) |████████████████████████████████| 8.3 MB 1.7 MB/s Collecting PyQt5-Qt5>=5.15 Downloading PyQt5_Qt5-5.15.2-py3-none-manylinux2014_x86_64.whl (59.9 MB) |████████████████████████████████| 59.9 MB 18.3 MB/s Collecting PyQt5-sip<13,>=12.8 Downloading PyQt5_sip-12.9.0-cp38-cp38-manylinux1_x86_64.whl (332 kB) |████████████████████████████████| 332 kB 46.1 MB/s Installing collected packages: PyQt5-Qt5, PyQt5-sip, PyQt5 Successfully installed PyQt5-5.15.4 PyQt5-Qt5-5.15.2 PyQt5-sip-12.9.0 Danach meckert er über ein fehlendes Modul requests (venv) frank@frank-MS-7C37:~/Restic_UI_Produktiv/restic-ui-public$ python3 restic_ui.py Traceback (most recent call last): File "restic_ui.py", line 41, in <module> from functions import ( File "/home/frank/Restic_UI_Produktiv/restic-ui-public/functions.py", line 19, in <module> import requests as req ModuleNotFoundError: No module named 'requests' Installation requests (venv) frank@frank-MS-7C37:~/Restic_UI_Produktiv/restic-ui-public$ pip3 install requests Collecting requests Downloading requests-2.25.1-py2.py3-none-any.whl (61 kB) |████████████████████████████████| 61 kB 802 kB/s Collecting chardet<5,>=3.0.2 Downloading chardet-4.0.0-py2.py3-none-any.whl (178 kB) |████████████████████████████████| 178 kB 2.7 MB/s Collecting certifi>=2017.4.17 Downloading certifi-2021.5.30-py2.py3-none-any.whl (145 kB) |████████████████████████████████| 145 kB 14.0 MB/s Collecting idna<3,>=2.5 Downloading idna-2.10-py2.py3-none-any.whl (58 kB) |████████████████████████████████| 58 kB 9.4 MB/s Collecting urllib3<1.27,>=1.21.1 Downloading urllib3-1.26.6-py2.py3-none-any.whl (138 kB) |████████████████████████████████| 138 kB 11.5 MB/s Installing collected packages: chardet, certifi, idna, urllib3, requests Successfully installed certifi-2021.5.30 chardet-4.0.0 idna-2.10 requests-2.25.1 urllib3-1.26.6 Und schwupps, geht mein Tool wieder [image: 1625848253488-4968ce42-7c66-4c8a-a2ad-424b9a529d87-grafik.png]
  • Python und GUI

    Verschoben Python3
    1
    +0
    0 Stimmen
    1 Beiträge
    165 Aufrufe
    Niemand hat geantwortet