QLineEditウィジェットを使用してユーザー入力を取得できます。 このレッスンでは、実行時にラベルテキストを変更する行編集を行います。
ウィンドウには、1つ以上のQLineEditウィジェットを含めることができます。 それら自体にはラベルが含まれていません。UXの目的で、QLineEditにラベルを追加して、ボックスに何を入力するかをユーザーに指示することができます。
関連コース: PythonPyQt5でGUIアプリを作成する
QLineEdit
以下のオブジェクト指向コードは、コンストラクターを使用してウィンドウを作成します。 入力ボックスまたは行編集がウィンドウに追加されます。これはQLineEditと呼ばれます。
次に、ラベルと行編集を追加します。
1 2 3 4 5 6
|
self.lineEntry = QLineEdit(self) self.lineEntry.move(16,16) self.lineEntry.resize(200,40)
self.qlabel = QLabel(self) self.qlabel.move(16,64)
|
入力ボックスですべてのキーを押すと接続できます(QLineEdit)メソッド呼び出しを使用します。
1
|
self.lineEntry.textChanged.connect(self.onChanged)
|
その方法では、ラベルのテキストを設定し、ラベルのサイズを調整します。
1 2 3
|
def onChanged(self, text): self.qlabel.setText(text) self.qlabel.adjustSize()
|
例
以下のサンプルコードをコピーして貼り付けて、自分で試してみてください。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
|
import sys from PyQt5.QtWidgets import QApplication, QMainWindow, QLabel, QLineEdit, QPushButton
class Example(QMainWindow): def __init__(self): super().__init__() self.lineEntry = QLineEdit(self) self.lineEntry.move(16,16) self.lineEntry.resize(200,40)
self.qlabel = QLabel(self) self.qlabel.move(16,64)
self.lineEntry.textChanged.connect(self.onChanged) self.setGeometry(50,50,320,200) self.setWindowTitle("QLineEdit Example") self.show()
def onChanged(self, text): self.qlabel.setText(text) self.qlabel.adjustSize() if __name__ == '__main__': app = QApplication(sys.argv) ex = Example() sys.exit(app.exec_())
|
Python PyQtを初めて使用する場合は、 それなら私はこの本を強くお勧めします。
例をダウンロード
Hope this helps!
Source link