Fragen zu QT mit python eines Anfängers

Python und das Qt-Toolkit, erstellen von GUIs mittels des Qt-Designers.
Antworten
sauterle
User
Beiträge: 81
Registriert: Mittwoch 27. Juli 2022, 21:33

Hallo
ich bin in Python insbesonders in der GUI programmirung mit python ein ziemler Anfänger.Insgesamt habe ich 2 Fragen/Probleme,deren Atwort ich mir hier erhoffe.

Danke für Antworten im Voraus.

1.
Soweit ich es mir erlesen habe ist das Vorgehen Bei der "initialisiren" der qt-GUI im python Program etwa so:

Code: Alles auswählen

from PySide6.QtWidgets import QApplication, QMainWindow
from Robo_GUI import Ui_MainWindow

class hh(QMainWindow,Ui_MainWindow):
    def __init__(self):
        super().__init__()
        self.setupUi(self)
app=QApplication()
frm_main=hh()
frm_main.show()
app.exec()
aber wenn wenn "die Gui fertig ist"( in diesem fall meine ich damit

Code: Alles auswählen

app.exec()
)bleibt dass programm in diser codezeile und wenn die eine Schaltfläche gedrückt wird, werden hinterlegte funktionen aufgerufen,was bei einfachen Programmen gut funktionirt, wie aber macht man es wenn man will, dass im hintergrung ein Hauptprogramm läuft ,das nur wenn ich eine schaltfläche drücke durch die GUI beeinflusst wird

2.Die zweite Frage bezieht sich auf den qt Desingner ,wo ich das Problem habe,dass man in der fertigen GUI immer nur einen RadioButton in einem Layout gleichzeitig "aktivieren" kann, dth. wenn man ein in dem selben Layout erst auf einen , dann auf einen zweiten radio Button klickt verschwindet der schwarze Punkt von dem einen, und springt auf den anderen über,wie kann man die RadioButtons so deffiniren , dass sie unabhänigg voneinander ein und ausschaltbar sind?

Bitte entschuldigt meinen Mangel an Fachwissen und Fachsprache

Lg sauterle
Sirius3
User
Beiträge: 17741
Registriert: Sonntag 21. Oktober 2012, 17:20

Zu 1) das läuft auf die schon angesprochene Parallelisierug hinaus, die man bei Qt z.B. mit einem QThread macht.
Zu 2) das ist die Definition eines RadioButtons. Es ist immer nur einer innerhalb einer RadiobuttonGroup aktiv. Wenn Du Checkboxen willst, dann benutze Checkboxen.

Module werden komplett klein geschrieben. Klassen dagegen mit großen Anfangsbuchstaben. `hh` ist ein sehr schlechter Klassennamen, weil er nichts aussagt. Man erzeugt aus den ui-Dateien des Designers keinen Pythoncode, sondern lädt die ui-Dateien direkt.
sauterle
User
Beiträge: 81
Registriert: Mittwoch 27. Juli 2022, 21:33

Hallo
zunächst danke für die Antworten
kann man auch eine checkbox mit dem aussehen eines radiobuttons erstellen
LG sauterle
__deets__
User
Beiträge: 14529
Registriert: Mittwoch 14. Oktober 2015, 14:29

Warum? Diese graphischen Elemente sind nicht umsonst bekannt, da plötzlich ein anderes Verhalten unpassend zur Erwartung zu programmieren ist eine schlechte Idee. Und ganz ehrlich: du kämpfst mit einer Menge Grundlagen alleine für deine eigentliche Funktion - parallelisierung, Kommunikation zwischen verschiedenen Systemen. Ist diese Darstellungskleinigkeit wirklich das wichtigste auf der Liste?
sauterle
User
Beiträge: 81
Registriert: Mittwoch 27. Juli 2022, 21:33

Hallo
nein die darstellung ist nicht so wichtig ich werde es einfach mit den checkboxen machen
danke nocheinmal für die Antworten
LG sauterle
Antworten