「QGIS #006 – プラグイン作成」を応用してプラグインでダイアログを表示する方法を記載します。
QGISのプラグインでダイアログを表示するためには下記方法でおこないます。
_init_.py
# -*- coding: utf-8 -*-
#---------------------------------------------------------------------------
# Name: Sample Plugin02
# Purpose: サンプルプラグインの作成
#
# Author: dayjournal
#
# Created: xx/xx/2015
# Copyright: (c) dayjournal 2015
#---------------------------------------------------------------------------
def classFactory(iface):
from sample import SamplePlugin02
return SamplePlugin02(iface)
sample.py
# -*- coding: utf-8 -*-
from PyQt4.QtCore import *
from PyQt4.QtGui import *
from qgis.core import *
import os
class SamplePlugin02:
def __init__(self, iface):
self.iface = iface
def initGui(self):
path = os.path.dirname(__file__) + u'\icon.png'
self.action = QAction(QIcon(path), "sample", self.iface.mainWindow())
QObject.connect(self.action, SIGNAL("triggered()"), self.run)
self.iface.addToolBarIcon(self.action)
self.iface.addPluginToMenu("Sample Plugin02", self.action)
def unload(self):
self.iface.removePluginMenu("Sample Plugin02", self.action)
self.iface.removeToolBarIcon(self.action)
def run(self):
QMessageBox.information(self.iface.mainWindow(), 'sample', u'プラグインを実行しました!!')
トリガーの設定
QObject.connect(self.action, SIGNAL("triggered()"), self.run)
プラグインの実行時の処理
def run(self):
プラグイン実行でメッセージボックスを表示 第2引数に題名、第3引数にコメントを記述
QMessageBox.information(self.iface.mainWindow(), 'sample', u'プラグインを実行しました!!')
metadata.txt
[general]
name = Sample Plugin02
description = サンプルプラグイン
about = サンプルプラグインを作成しました。
category = sample
tags = sample,plugin
homepage=https://github.com/
repository=https://github.com/
author = dayjournal
email = dayjournal@gmail.com
version = 1.0
changelog =
1.0 - 初版作成
icon=icon.png
qgisMinimumVersion = 2.8
プラグインを「プラグイン管理」で利用可にすると下記のようにプラグインを実行できるようになります。
- 参考文献
QGIS