我需要通过主窗口上的按钮插槽调用表单(使用QtDesigner设计的自定义对话框)(也在QtDesigned上,因此是单独的文件)。以下是相关代码:
def __init__(self, parent = None):
super(MainWindow, self).__init__(parent)
self.setupUi(self)
self.btn.clicked.connect(self.my_func)
def my_func(self):
form = Form_UI.Custom_Dialog()
if form.exec_():
print "successfully opened"
我怎么会收到以下错误:
Traceback (most recent call last):
File "F:\myPath\code.py", line 27, in my_func
if form.exec_():
AttributeError: 'Custom_Dialog' object has no attribute 'exec_'
我不明白,因为下面的代码(使用内置的Dialog)工作正常:
def __init__(self, parent = None):
super(MainWindow, self).__init__(parent)
self.setupUi(self)
self.btn.clicked.connect(self.my_func)
def my_func(self):
form = QtGui.QDialog()
if form.exec_():
print "successfully opened"
任何帮助将不胜感激。提前谢谢。
答案 0 :(得分:1)
由pyuic4
生成的类不是从QDialog
派生的,所以如果你没有像为主窗口那样为该ui文件编写python类,则需要创建一个{ {1}}对象和一个ui类对象:
QDialog