Skip to content

Python3 - PyQt5 Layout

Python3
  • Heute mal was hier speichern, es geht einmal um ein QFormLayout, was einem einspaltigen Eingabeforumlar entspricht, wo man vorne noch einen Text hinzufügen kann. Und dann als Beispiel ein QGridLayout, was einem mehrspaltigen Aufbau entspricht.

    QFormLayout

    Vorne Bezeichnung, danach das Inputfeld.

    # Create an layout
    self.formGroupBox = QGroupBox("Form layout")
    layout = QFormLayout()
    
    layout.addRow(self.label_1)
    
    layout.addRow(QLabel("Backup Name"), self.input1)
    layout.addRow(QLabel("Repository"), self.button3)
    layout.addRow(QLabel("Source"), self.button4)
    layout.addRow(QLabel("Password"), self.input4)
    layout.addRow(QLabel("Exclude List *"), self.button5)
    layout.addRow(self.label_7)
    layout.addRow(self.label_6)
    layout.addRow(self.button2)
    

    Ergibt so was hier

    96741eff-bf6c-4c48-9c2c-c87e4182eaa1-grafik.png

    QGridLayout

    Vorne ein Label mit Text, dann ein Inputfeld und Ende ein Button, der hier einen Dateidialog lädt.

    #####################
    # Layout
    #####################
    
    # Create an layout
    self.formGroupBox = QGroupBox("Form layout")
    layout = QGridLayout()
    
    layout.addWidget(self.label_1, 0, 0)
    layout.addWidget(QLabel("Backup Name"), 1,0)
    layout.addWidget(self.input1, 1, 1)
            
    layout.addWidget(QLabel("Repository"), 2,0)
    layout.addWidget(self.button3, 2, 2)
    layout.addWidget(self.input2, 2, 1)
            
    layout.addWidget(QLabel("Source"), 3,0)
    layout.addWidget(self.button4, 3, 2)
    layout.addWidget(self.input3, 3, 1)
            
    layout.addWidget(QLabel("Password"), 4,0)
    layout.addWidget(self.button3, 1, 2)
    layout.addWidget(self.input4, 4, 1)
            
    layout.addWidget(QLabel("Exclude List *"), 5,0)
    layout.addWidget(self.button5, 5, 2)
    layout.addWidget(self.input5, 5, 1)
            
    layout.addWidget(self.label_7, 6, 0)
            
    layout.addWidget(self.label_6, 7, 0)
            
    layout.addWidget(self.button2, 8 ,0)
        
    self.formGroupBox.setLayout(layout)
    self.setLayout(layout)
    

    Ergibt dann das hier

    6e6dae58-be7d-4146-8ed0-933577e30b9d-grafik.png

  • PyPi - Pakete ein Sicherheitsproblem?

    Python3
    1
    0 Stimmen
    1 Beiträge
    66 Aufrufe
    Niemand hat geantwortet
  • Python - Match-Case Statement

    Python3
    1
    0 Stimmen
    1 Beiträge
    82 Aufrufe
    Niemand hat geantwortet
  • Python - mehrsprachiges GUI

    Python3
    1
    0 Stimmen
    1 Beiträge
    111 Aufrufe
    Niemand hat geantwortet
  • 0 Stimmen
    2 Beiträge
    207 Aufrufe
    FrankMF

    Der Autor hat meine Anpassungen um ein paar Änderungen erweitert und in sein Repo eingepflegt. Der QtWaitingSpinenr ist jetzt auch 3.10 kompatibel 🤓

    1b268980-92ca-42a4-89a0-a6e4b7ab9378-grafik.png

  • Python3 - String-Operatoren

    Python3
    1
    0 Stimmen
    1 Beiträge
    134 Aufrufe
    Niemand hat geantwortet
  • Python3 - Eingabeformular

    Python3
    3
    0 Stimmen
    3 Beiträge
    190 Aufrufe
    FrankMF

    Meine endgültige Lösung, zu mindestens im Moment 😉 , ist ein zweites Window. Das gefällt mir am Besten, komme ich zu mindestens im Moment einfach besser mit klar. Aber, eines der größten Probleme war für mich, wie aktualisiere ich die Liste im Hauptfenster!? Da habe ich doch etliche Stunden dran rum gefummelt....

    Hier nur mal das Layout

    ##################### # Layout ##################### self.formGroupBox = QGroupBox("Form layout") layout = QFormLayout() layout.addRow(self.label_1) layout.addRow(QLabel("Backup Name:"), self.input1) layout.addRow(QLabel("Repository:"), self.button3) layout.addRow(QLabel("Source:"), self.button4) layout.addRow(QLabel("Password:"), self.input4) layout.addRow(self.label_6) layout.addRow(self.button2) self.formGroupBox.setLayout(layout) self.setLayout(layout)

    Das mit dem SecondWindow ist aber was aufwändiger. Da mach ich dann mal einen eigenen Beitrag zu. Aktuell sieht das so aus.

    6c68c956-9127-438f-bc54-4dcef8e18f00-image.png

  • 0 Stimmen
    2 Beiträge
    208 Aufrufe
    FrankMF

    Dinge entwickeln sich. Es sieht alles schon wieder was anders aus 🙂

    Hauptfenster
    270b5c68-3d64-44ca-9a01-e3f24ba4a26c-grafik.png

    Setup Fenster zum Erstellen der wg0.conf
    27c3cb28-50f5-4e00-b03d-de47c07372a0-grafik.png

    Und alles funktioniert so weit 🤓

  • Python und GUI

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