Inhaltsverzeichnis
Neuerungen
Version 7.01
Ab Version 7.01 wird der qt_message_handler automatisch in das Skript python_init.py eingefügt.
Version 7.00
Unterstützung für das Debuggen von Qt-Anwendungen
GuiPy bietet einen integrierten GUI-Designer, der die GUI-Erstellung erheblich vereinfacht. Bei der Implementierung von Ereignismethoden können jedoch leicht Tippfehler passieren, nicht vorhandene Methoden aufgerufen oder die Konvertierung in geeignete Datentypen vergessen werden.
Bislang konnte GuiPy aufgrund der Qt-Fehlerbehandlung keine Meldungen zu solchen Fehlern anzeigen. Debuggen war die Methode, solche Fehler zu finden. Der Entwickler von PyScripter hat nun eine Lösung entwickelt, die diese Fehlermeldungen anzeigt. Dadurch lassen sich Fehler ganz einfach finden, beheben und eine funktionierende GUI-Anwendung erhalten.
Vorgehensweise
Bei einer bestehenden GuiPy-Installation müssen Sie folgende Zeilen in das Skript python_init.py einfügen:
def qt_message_handler(mode, context, message): print(message) try: from PyQt6.QtCore import qInstallMessageHandler qInstallMessageHandler(qt_message_handler) except: pass
Bei einer normalen Installation finden Sie das Skript python_init.py im Ordner:
C:\Users\%USERNAME%\AppData\Roaming\GuiPy\
Bei einer portablen Installation finden Sie das Skript im Ordner von GuiPy.exe.
Öffnen Sie „Werkzeuge/Konfiguration“ und klicken Sie auf „Dump“, um die Ordner (für andere INI-Dateien) anzuzeigen.
Eine Neuinstallation generiert das benötigte Skript python_init.py. Ein Update ändert dieses Skript nicht, da möglicherweise bereits benutzerdefinierte Erweiterungen vorhanden sind.
Verwendung
Wenn Ihre Qt-Anwendung mit einem Fehler beendet wird, wird dieser im Interpreter-Fenster angezeigt. Doppelklicken Sie auf die letzte Zeile der Fehlermeldung, um den Cursor in die Fehlerzeile zu setzen. Lesen Sie die Fehlermeldung sorgfältig durch, um sie zu verstehen und das Problem zu beheben.
Im Beispiel wurde vergessen, dass self.aBlock.get_Nonce() eine Ganzzahl zurückgibt, die mit „str“ konvertiert werden muss, damit sie in einem Qt-LineEdit mit self.leNonce.setText(str(self.aBlock.get_Nonce()))) angezeigt werden kann.
In der Version 5.11
Multi-Cursor-Bearbeitung
Mit der Multi-Cursor-Bearbeitung können Sie mehrere Cursor (blinkende Carets im Text) innerhalb der aktiven Datei aktivieren. Jeder Cursor arbeitet unabhängig von jedem anderen Cursor und die meisten Bearbeitungsvorgänge werden an allen Cursor-Positionen gleichzeitig ausgeführt.
Maus
| Alt + Mausklick | ergänzt einen neuen Cursor |
| Alt + doppelter Mausklick | markiert ein Wort und ergänzt einen Cursor |
| Alt + dreifacher Mausklick | markiert eine Zeile und ergänzt einen Cursor |
| Alt + Mausbewegung | markiert Text und ergänzt einen Cursor |
| Alt + Umsch + Mausklick/-bewegung | markiert Text im Spaltenmodus und ergänzt viele Cursor |
Tastatur
| Esc | beendet die Multi-Cursor-Bearbeitung |
| Alt + Umsch + Hoch/Runter/Seite hoch/Seite runter | setzt neue Cursor im Spaltenmodus |
| Alt + Umsch + Links/Rechts | markiert Text im Spaltenmodus und ergänzt Cursor |
| Alt + Ende | fügt Cursor am Ende aller Zeilen der aktuellen Textauswahl hinzu |
| Strg + W | fügt das nächste passende Wort der aktuellen Textauswahl hinzu und ergänzt einen Cursor |
| Umsch + Strg + W | wählt alle übereinstimmenden Vorkommen eines Wortes aus und ergänzt jeweils einen Cursor |
Im Multi-Cursor-Modus kann man auch die Zwischenablage benutzen.
Auf der Seite Multi-caret and multi-selection editing werden die Funktionen der Mulit-Cursor-Bearbeitung in Videos vorgestellt.
Kommentierte Bildlaufleisten
In diesem Screenshot können Sie in der Bildlaufleiste Folgendes sehen:
- die Position der mehreren Cursor (durchgezogene bläuliche Linie)
- die Position der Lesezeichen (kleine bläuliche Markierungen auf der linken Seite)
- Informationen zu Zeilenänderungen (auf der rechten Seite)
- Alpha-Blending-Schieberegler


