PyQt5でtabwidgets上に複数のボタンを配置したい
PyQt5でtabwidgetsに複数のボタンを配置したいのですが、書き方が分かりません。
######したいこと
・同じタブ上に複数のボタンを配置したい
該当のソースコード
python3
1import sys 2from PyQt5.QtCore import * 3from PyQt5.QtWidgets import * 4import sip 5import subprocess 6 7class MainWindow(QWidget): 8 def __init__(self, parent=None): 9 10 super(MainWindow, self).__init__(parent) 11 12 layout = QGridLayout() 13 self.setLayout(layout) 14 15 16 # 横のレイアウト 17 self.horizon = QHBoxLayout() 18 # 縦のレイアウト 19 self.vertical = QVBoxLayout() 20 21 22 button = QPushButton('blender', self) 23 button.clicked.connect(self.output) 24 25 button2 = QPushButton("minecraft", self) 26 button2.clicked.connect(self.output2) 27 28 button3 = QPushButton("test", self) 29 button3.clicked.connect(self.output3) 30 31 tabwidget = QTabWidget() 32 tabwidget.addTab(button, "Tab 1") #この"Tab 1"にbuttonとbutton3を配置したい 33 tabwidget.addTab(button2, "Tab 2") 34 layout.addWidget(tabwidget, 0, 0) 35 36 self.horizon.addLayout(self.vertical) 37 self.setLayout(self.horizon) 38 39 self.setGeometry(300, 50, 400, 350) 40 self.setWindowTitle('QCheckBox') 41 def output(self): 42 subprocess.Popen(r"D:\Blender 2.93\blender.exe") 43 sys.exit(app.exec_()) 44 def output2(self): 45 subprocess.Popen(r"D:\minecraft\MinecraftLauncher.exe") 46 sys.exit(app.exec_()) 47 def output3(self): 48 pass 49if __name__ == '__main__': 50 app = QApplication(sys.argv) 51 main_window = MainWindow() 52 main_window.show() 53 sys.exit(app.exec_())
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/08/09 12:41