如何在PyQGIS中显示表单?

时间:2012-03-01 10:01:23

标签: python qgis plugins

我正在使用QGIS的python插件,就像 rt sql layer 一样。我开发了插件并复制到本地存储库* C:\ Documents and Settings \ comp90.qgis \ python \插件* 。 当我打开QGIS exe时,建立连接并列出所有表。但是当我尝试打开我的查询构建器表单时,它给出了错误说

QDialog.__init__(self, parent)
TypeError: QDialog(QWidget parent=None, Qt.WindowFlags flags=0): argument 1 has unexpected 
type 'QgisInterface'

我的查询构建器表单代码如下:

class DlgQueryBuilder(QDialog, Ui_Dialog):
    def __init__(self,db=conn, iface=None, parent=None):


            QDialog.__init__(self, parent)

            self.setupUi(self)

            self.db = db

什么是 QgisInterface ?帮助我...... !!

此表单是从 ManagerWindow.py 文件中调用的,如下所示:

def queryWindow(self):
            """ show sql window """
            dlg = DlgQueryBuilder(self, self.db, self.iface)
            if dlg.exec_():
                    self.close()

1 个答案:

答案 0 :(得分:1)

创建对象时,您不会传递 self

dlg = DlgQueryBuilder(self.db, self.iface)