【发布时间】:2018-12-26 14:21:50
【问题描述】:
代码的基本布局
这里,每次用户点击PushButton 'Press me',都会生成一个新的CheckBox。
from PyQt5 import QtWidgets, QtGui, QtCore
count = 1
class Window(QtWidgets.QWidget):
def __init__(self, parent=None):
super(Window, self).__init__(parent)
self.vlayout = QtWidgets.QVBoxLayout()
self.pushButton1 = QtWidgets.QPushButton("Press me", self)
self.pushButton1.clicked.connect(self.addCheckbox(count))
self.pushButton2 = QtWidgets.QPushButton("OK", self)
self.vlayout.addWidget(self.pushButton1)
self.vlayout.addWidget(self.pushButton2)
self.setLayout(self.vlayout)
def addCheckbox(self,count):
global count
self.vlayout.addWidget(str(count),QtWidgets.QCheckBox())
count = count +1
application = QtWidgets.QApplication(sys.argv)
window = Window()
window.setWindowTitle('Hello')
window.resize(250, 180)
window.show()
sys.exit(application.exec_())
我想做什么?
现在您将拥有唯一的复选框,每个复选框都有不同的编号,我想添加更多功能。
每次用户选择特定的复选框时,我都想知道用户在点击PushButton OK 后点击了哪个复选框。
例如:我点击复选框1 -> OK -> print 1 on the screen
我该怎么做?
PS:我们需要考虑用户从不点击Press me的可能性,所以不会生成任何复选框,直接点击OK
【问题讨论】:
-
@eyllanesc 现在好点了吗?
标签: python python-3.x pyqt pyqt5