Dies ist ein Memorandum zum Erstellen eines QtWidget mithilfe einer Klasse.
Klicken Sie hier für den zuvor zusammengefassten Artikel über die Klasse https://qiita.com/kashiba/items/339b81f63612ffdba573
Es ist ein einfaches Fenster mit nur einer Schaltfläche.
Jedes Mal, wenn Sie auf die Schaltfläche klicken, wird "Hallo Welt" gedruckt.
Hello world
Hello world
Hello world
Hello world
#!/usr/bin/python3
# -*- coding: utf-8 -*-
import sys
from PySide2.QtWidgets import *
class window_A(QWidget):
def __init__(self, parent=None):
super(window, self).__init__(parent)
self.w = QWidget()
self.layout = QVBoxLayout()
#Erstellen und platzieren Sie eine Schaltfläche
self.button = QPushButton("Button")
self.layout.addWidget(self.button)
#Link Button Klick mit Funktion Hallo
self.button.clicked.connect(self.hello)
self.w.setLayout(self.layout)
self.w.show()
#Wird per Knopfdruck aufgerufen
def hello(self):
print("Hello world")
if __name__ == '__main__':
app = QApplication(sys.argv)
main_window = window()
sys.exit(app.exec_())
class window_A(QWidget):
def __init__(self, parent=None):
super(window, self).__init__(parent)
Erstellen Sie eine Klasse window_A
, die QWidget erbt und init der Superklasse (QWidget) erbt.
Wenn Sie diesen Bereich mit "Klassenvererbung" nachschlagen, finden Sie viele Informationen.
self.w = QWidget()
QVBoxLayout
Erstellen Sie "QWidget" als Basis des Fensters und "QVBoxLayout" als Rahmen für das Layout der Schaltflächen. V von QVBoxLayout zeigt vertikales und vertikales Layout an, und H von QHBoxLayout zeigt horizontales und horizontales Layout an.
■ Beispiel für die Erstellung eines QVBoxLayout
■ Beispiel für die Erstellung von QVHoxLayout
self.button = QPushButton("Button")
self.layout.addWidget(self.button)
Ich habe ein "QPushButton" -Objekt erstellt und das Label "Button" an die Schaltfläche angehängt.
Der Befehl addWidget
legt die Schaltfläche bei self.layout
= QVBoxLayout
an.
self.button.clicked.connect(self.hello)
Ich verbinde die Funktion "self.hello" mit "self.button".
Mit .clicked.connect
können Sie die angegebene Funktion mit dem Ereignis verbinden, wenn Sie auf die Schaltfläche klicken. Beachten Sie, dass wir "self.hello" anstelle von "self.hello ()" angeben. ** () ist nicht nötig. ** ** **
self.w.setLayout(self.layout)
self.w.show()
Setzen Sie "self.layout" = "QVBoxLayout" auf "self.w" = "QWidget" in ".setLayout". ■ Bilddiagramm
def hello(self):
print("Hello world")
Es ist eine Funktion, die nur Hello World druckt.
if __name__ == '__main__':
app = QApplication(sys.argv)
main_window = window()
sys.exit(app.exec_())
Dies ist der Vorgang, wenn die Python-Datei gestartet wird. Generieren Sie nach dem Erstellen der QApplication die Fensterklasse. Gleichzeitig mit der Generierung der Fensterklasse generiert init das Fenster.
Klicken Sie hier, um zuvor zusammengefasste Artikel zu "QApplication" und "sys.exit (app.exec_ ())" anzuzeigen https://qiita.com/kashiba/items/95f04ea9700236853803
http://tommy-on.hatenablog.com/entry/2019/04/17/231229
Recommended Posts