dayjournal memo

Total 992 articles!!

QGIS #007 - プラグインでダイアログ表示

Yasunori Kirimoto's avatar

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_007_01


プラグインを実行するとダイアログが表示されます。 QGIS_007_02



book

Q&A


QGISプログラミング入門