【发布时间】:2012-02-03 11:28:28
【问题描述】:
我正在尝试将按钮的 click() 信号连接到我自己的函数。该按钮位于我使用 QT Designer 创建的小部件中。我像这样使用 QUiLoader 加载 .ui 文件:
class MyWidget(QtGui.QMainWindow):
def __init__(self, *args):
QtGui.QMainWindow.__init__(self, *args)
loader = QtUiTools.QUiLoader()
file = QtCore.QFile("pyside_ui_qtdesigner_form_test.ui")
file.open(QtCore.QFile.ReadOnly)
self.myWidget = loader.load(file, self)
file.close()
self.setCentralWidget(self.myWidget)
btn = self.myWidget.findChild(QtGui.QPushButton, "HelloWorldButton")
btn.clicked.connect(self.slot1)
def slot1(self):
print "Received"
这是连接按钮 clicked() 信号的正确方法吗?我看到我可以直接在 Qt Designer 中连接信号和插槽,但是我如何准备并在代码中连接这些连接? 附带问题:上面的代码有效,但主窗口显示的大小错误。如何确保它以正确的尺寸显示?我应该用最小的高度/宽度限制吗?
【问题讨论】:
标签: python pyqt pyside signals-slots qt-designer