【发布时间】:2021-03-06 16:30:25
【问题描述】:
我希望有人可以帮助我...
目标: 当按钮“button_trog”被点击时,它应该开始一个循环,根据从旋转框“spinbox_count”中选择的数字打开一个新窗口的特定时间量,从而可以输入一些东西。
情况: 到目前为止有效,但问题是窗口只打开一次。
当我点击接受按钮时它应该会再次打开。
我不确定接下来要尝试什么,因为据我了解,它应该再次打开窗口... 我的意思是循环正在工作,我用 print() 函数尝试过。
这是来自主窗口文件的代码:
代码:spinbox_count
self.spinbox_count = QtWidgets.QSpinBox(self.centralwidget)
self.spinbox_count.setGeometry(QtCore.QRect(370, 430, 70, 30))
font = QtGui.QFont()
font.setPointSize(15)
self.spinbox_count.setFont(font)
self.spinbox_count.setObjectName("spinbox_count")
代码:button_trog
self.button_trog = QtWidgets.QPushButton(self.centralwidget)
self.button_trog.setGeometry(QtCore.QRect(530, 390, 200, 100))
font = QtGui.QFont()
font.setPointSize(15)
self.button_trog.setFont(font)
self.button_trog.setObjectName("button_trog")
self.button_trog.clicked.connect(self.scanning)
代码:def扫描
def scanning(self):
count = self.spinbox_count.value()
self.lcount = 0
if count < 1:
print("Bitte geben Sie eine Stückzahl ein!")
while self.lcount < count:
self.window = QtWidgets.QDialog()
self.ui = Ui_window_scanning()
self.ui.setupUi(self.window)
self.window.show()
self.lcount = self.lcount + 1
这里从“弹出”对话框窗口的第二个文件开始代码。
代码:窗口对话框
class Ui_window_scanning(object):
def setupUi(self, window_scanning):
window_scanning.setObjectName("window_scanning")
window_scanning.resize(400, 300)
window_scanning.setContextMenuPolicy(QtCore.Qt.DefaultContextMenu)
# Label Description Scanning
self.label_scanning = QtWidgets.QLabel(window_scanning)
self.label_scanning.setGeometry(QtCore.QRect(30, 20, 341, 71))
font = QtGui.QFont()
font.setPointSize(15)
self.label_scanning.setFont(font)
self.label_scanning.setAlignment(QtCore.Qt.AlignCenter)
self.label_scanning.setObjectName("label_scanning")
# Input Barcode
self.lineedit_scanning = QtWidgets.QLineEdit(window_scanning)
self.lineedit_scanning.setGeometry(QtCore.QRect(100, 120, 200, 30))
font = QtGui.QFont()
font.setPointSize(12)
self.lineedit_scanning.setFont(font)
self.lineedit_scanning.setObjectName("lineedit_scanning")
# Button Accept and Cancel
self.buttonbox_scanning = QtWidgets.QDialogButtonBox(window_scanning)
self.buttonbox_scanning.setGeometry(QtCore.QRect(120, 210, 156, 23))
self.buttonbox_scanning.setStandardButtons(
QtWidgets.QDialogButtonBox.Cancel | QtWidgets.QDialogButtonBox.Ok)
self.buttonbox_scanning.setObjectName("buttonbox_scanning")
self.buttonbox_scanning.rejected.connect(window_scanning.reject)
self.buttonbox_scanning.accepted.connect(window_scanning.accept)
提前致谢!
【问题讨论】:
-
请阅读更多关于formatting code的信息并检查您的缩进。
标签: python loops user-interface pyqt5 window