![使用按钮打开快速对话框](https://linux22.com/image/967948/%E4%BD%BF%E7%94%A8%E6%8C%89%E9%92%AE%E6%89%93%E5%BC%80%E5%BF%AB%E9%80%9F%E5%AF%B9%E8%AF%9D%E6%A1%86.png)
我已经使用快速添加对话框创建了一个窗口。但我不知道如何简单地从按钮打开对话框。我已经在主窗口中设置了一个按钮并为其设置了代码。这是按钮的代码:
def on_quicksitesbutton_clicked(self, widget):
dialog = QuicksitesDialog.QuicksitesDialog()
result = dialog.run()
我还用以下代码行导入了对话框:
from brandsonicweb.QuicksitesDialog import QuicksitesDialog
程序运行良好,但是当我单击按钮时,我进入终端:
Traceback (most recent call last):
File "/home/brandon/brandsonicweb/brandsonicweb/BrandsonicwebWindow.py", line 71, in on_quicksitesbutton_clicked
dialog = QuicksitesDialog.QuicksitesDialog()
AttributeError: type object 'QuicksitesDialog' has no attribute 'QuicksitesDialog'
我做错了什么?我该如何做?
答案1
可能是这样的:
您导入第QuicksitesDialog
一个:
from brandsonicweb.QuicksitesDialog import QuicksitesDialog
然后尝试再次调用它:
dialog = QuicksitesDialog.QuicksitesDialog()
无需查看代码,可以通过两种方式修复此问题:
from brandsonicweb.QuicksitesDialog import QuicksitesDialog
dialog = QuicksitesDialog()
或者:
from brandsonicweb import QuicksitesDialog
dialog = QuicksitesDialog.QuicksitesDialog()
这可能会有点令人困惑,因为显然 Quickly 赋予了模块和类相同的名称。
还要注意优秀的 Python 错误,它给你一个很好的提示。