以下のコードにて、簡単な入力フォームの練習をしています。
しかしながら、置くことはできましたが、レイアウトが悪く、見栄えがしません。
左詰め等で、綺麗にレイアウトするにはどうしたらよろしいでしょうか。
教えていただければ幸いです。
ーーーー以下コードーーーー
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QLabel, QGridLayout, QPushButton, QLineEdit, QMessageBox, QCheckBox, QRadioButton
class ExampleWidget(QWidget):
def __init__(self): super().__init__() self.initUI() def initUI(self): self.resize(400, 250) self.move(500, 200) self.setWindowTitle('入力フォーム') # buttonの設定 self.button = QPushButton('表示') self.button.clicked.connect(self.buttonClicked) # テキストボックスの設定 self.textname = QLineEdit() self.texttel = QLineEdit() # ラベルの設定 self.label1 = QLabel('名前:') self.label2 = QLabel('TEL:') self.label3 = QLabel('性別:') self.label6 = QLabel('血液型:') # チェックボックスの設定(性別) self.checkman = QCheckBox('男性', self) self.checkwoman = QCheckBox('女性', self) # ラジオボタンの配置(血液型) self.radioA = QRadioButton('A') self.radioB = QRadioButton('B') self.radioO = QRadioButton('0') self.radioAB = QRadioButton('AB') # レイアウト配置 self.grid = QGridLayout() self.grid.addWidget(self.textname, 0, 2, 1, 1) self.grid.addWidget(self.texttel, 1, 2, 1, 1) self.grid.addWidget(self.button, 0, 4, 1, 1) self.grid.addWidget(self.label1, 0, 0, 1, 1) self.grid.addWidget(self.label2, 1, 0, 1, 1) self.grid.addWidget(self.label3, 2, 0, 1, 1) self.grid.addWidget(self.label6, 3, 0, 1, 1) self.grid.addWidget(self.checkman, 2, 1, 1, 1) self.grid.addWidget(self.checkwoman, 2, 3, 1, 1) self.grid.addWidget(self.radioA, 3, 1, 1, 1) self.grid.addWidget(self.radioB, 3, 2, 1, 1) self.grid.addWidget(self.radioO, 3, 3, 1, 1) self.grid.addWidget(self.radioAB, 3, 4, 1, 1) self.setLayout(self.grid) # 表示 self.show() def buttonClicked(self): QMessageBox.about(self, "Title", 'Hello,' + self.textname.text())
if name == 'main':
app = QApplication(sys.argv) ew = ExampleWidget() sys.exit(app.exec_())
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。