\编辑:将代码简化到最小值
我无法连接button.clicked到MVC方法中的函数。调试代码时,在一段时间内(2-5次单击)所有操作都可以正常工作,而不是对单击没有反应。当我在正常模式下运行应用程序(无调试)时,对单击没有任何反应。没有任何错误
我试着从这里学习这个例子(MVC模型):https://realpython.com/python-pyqt-gui-calculator/#creating-a-calculator-with-python-and-pyqt,这很好用。我从web上尝试了一些其他示例,也很好地工作,所以我的代码似乎有问题,而不是安装/配置问题
我现在完全不知所措,甚至不知道该问谷歌什么
代码如下:
from PyQt5 import QtCore, QtWidgets
import sys
class Ui_MainWindow(object):
def setupUi(self, MainWindow):
MainWindow.setObjectName("MainWindow")
MainWindow.resize(807, 567)
self.centralwidget = QtWidgets.QWidget(MainWindow)
MainWindow.setCentralWidget(self.centralwidget)
self.btn_rand = QtWidgets.QPushButton(self.centralwidget)
self.btn_rand.setGeometry(QtCore.QRect(290, 170, 175, 34))
self.btn_rand.setText("Random")
class GUIWords(QtWidgets.QMainWindow, Ui_MainWindow):
def __init__(self):
super().__init__()
self.setupUi(self)
class GUIWordsCtr:
def __init__(self, view):
self._view = view
self._connectSignals()
def _connectSignals(self):
self._view.btn_rand.clicked.connect(self._print)
def _print(self):
print("rand")
app = QtWidgets.QApplication([])
view = GUIWords()
view.show()
GUIWordsCtr(view)
sys.exit(app.exec())
当我合并类GUIWords和GUIWordsCtr时,所有这些都按预期工作。显然,问题是我在将类GUIWords传递给GUIWordsCtr时出错了。但它和上面提到的calc示例完全一样
缺少任何错误都会让我发疯,并且在调试时工作,但不是在运行模式下。对我来说有点神奇:(
试试看:
相关问题 更多 >
编程相关推荐