QGIS plugin开发使用

起步

1.刚来就不建议看文档手动创建 plugin 了,python 很熟悉的人可以看文档试试,否则还是别手动创建了,几乎所有的开发者都是通过Plugin Builder这个 Plugin 来创建的 Plugin,安装好了以后,打开 Plugin Builder,根据提示输入内容,一直下一步就创建好了。 2.用 pyrcc5 -o resources.py resources.qrc命令,把 resources.qrc 资源文件转换成 py 文件,主程序 test.py 文件中已经自动引入了。如果没有pyrcc5命令,执行pip install PyQt5安装 PyQt。 3.把整个生成的文件夹,拷贝到,~\AppData\Roaming\QGIS\QGIS3\profiles\default\python\plugins 下面,所有的 plugin 其实都在这里。 4.打开 qgis 插件–已安装,勾选 test 插件,就可以看到菜单上多了按钮,点击就能打开了。

以上最原始的 demo 就能够看见了,下面说说怎么自己写代码

5.插件有一个 test*dialog.py 文件,里面最关键的一句代码应该是FORM_CLASS, * = uic.loadUiType(os.path.join(os.path.dirname(**file**), 'Test_dialog_base.ui')),这就是加载转换.ui文件给pyqt用的。 6.生成的插件文件,包含了Test_dialog_base.ui,就是界面文件。安装QGIS的时候自带了Qt Designer,用Designer就可以打开就能看到和编辑了,这里从左边拖一个Push Button进去,后面用。编辑完成界面,去QGIS里面,取消勾选,在重新选中,就重新加载插件了,能够看出来结果。这里推荐一个插件 Plugin Reloader,不用每次去取消重勾选,它可以帮我们重加载插件。 7.点击事件,在.ui文件对应的.py文件的构造函数,**init**中,加上self.pushButton.clicked.connect(self.pushButtonClicked),文件头导入from PyQt5.QtWidgets import QMessageBox然后定义方法:

def pushButtonClicked(self):
    QMessageBox.warning(None, 'info', '测试')

8.去 QGIS 里面 reload 插件,点击按钮就能看到结果了。 9.更多的东西就自己尝试咯,你已经入门了。


版权声明:
除非注明,本博文章均为原创,转载请以链接形式标明本文地址。



   转载规则


《QGIS plugin开发使用》 Jackie Tang(唐浩桀) 采用 知识共享署名 4.0 国际许可协议 进行许可。
 上一篇
Scrapy爬虫使用 Scrapy爬虫使用
飞速起步 安装 scrapypip install Scrapy(_类 unix 记得加 sudo_)安装完成以后,到命令行输入Scrapy,查看是否安装成功。 准备和配置 scrapy startproject [name]创建项目。
下一篇 
uniapp快速实践 uniapp快速实践
介绍之前给文保局做了 GIS 系统和物联网监控系统效果不错,现在想弄个 erp,问了一下业务规模,几乎约等于“零”。咋办,单一业务线走到底呗。本来说最近一直在搞 flutter,就用 flutter 给他们弄一个,app 和 web(bet
2020-04-10