プログレスバーの表示処理

145 views
Skip to first unread message

滝澤怜

unread,
Mar 14, 2022, 6:49:58 AM3/14/22
to QGIS初心者質問グループ
現在QGIS3.16で開発を行っています。
プラグインでプログレスバーの処理を開発中です。
プログレスバーを動かす方法を知りたいです。
よろしくお願いします。



〇表示されるダイアログ
キャプチャ (1).png

〇プログレスバーの表示処理
def  processTextMessage(self):
        QgsApplication.restoreOverrideCursor()
        dialog = QProgressDialog('test', 'Cancel', 0, 100)
        dialog.setWindowTitle("test")
        dialog.setLabelText("test")
        dialog.setWindowModality(Qt.WindowModal)
        bar = QProgressBar(dialog)
       
        bar.setTextVisible(True)
        bar.maximum=len(commandValues)
        bar.setValue(0)
        dialog.setBar(bar)
        dialog.show()
        for i in range (1, 101):
            time.sleep(0.35)
           

            if dialog.wasCanceled():
                break

ありた

unread,
Mar 14, 2022, 8:18:52 AM3/14/22
to QGIS初心者質問グループ
こんにちは

プラグインをはじめ、 GUI プログラミングの経験が乏しいため憶測になりますが
マルチスレッド等の機構を組み込むことで回避できそうな気はします。

Python や Qt に関する情報を調べてみてください。
また、見本とするプラグインがあるのならばソースを読んでみてください。

ありた

unread,
Mar 14, 2022, 8:40:02 AM3/14/22
to QGIS初心者質問グループ
Reply all
Reply to author
Forward
0 new messages