Selama memulai QGIS, ada pesan status yang ditampilkan di bagian bawah layar splash seperti "memulihkan plugin yang dimuat".
Saya menggunakan fitur startup.py dari mana saya ingin memberi tahu pengguna bagian skrip startup saya yang dijalankan saat ini.
Apakah mungkin untuk menampilkan informasi ini di splashscreen?
Edit1:
Sebagai solusi, saya berhasil menggunakan splashscreen saya sendiri saat startup:
from qgis.gui import *
from qgis.utils import *
from qgis.core import *
from PyQt4.QtGui import *
from qgis.PyQt.QtCore import QSettings, Qt
import time
template=QgsApplication.qgisSettingsDirPath() + "python/"
app=QgsApplication.instance()
splash_pix = QPixmap(template+'splashscreen.png')
splash = QSplashScreen(splash_pix, Qt.WindowStaysOnTopHint)
splash.setWindowFlags(Qt.WindowStaysOnTopHint | Qt.FramelessWindowHint)
splash.setEnabled(False)
splash.setMask(splash_pix.mask())
progressBar = QProgressBar(splash)
progressBar.setMaximum(10)
progressBar.setGeometry(0, splash_pix.height() - 20, splash_pix.width(), 10)
splash.show()
if QgsApplication.instance().findChild(QSplashScreen):
QgsMessageLog.logMessage("ja", "gridseen", level=QgsMessageLog.INFO)
else:
QgsMessageLog.logMessage("nein", "gridseen", level=QgsMessageLog.INFO)
splash.showMessage("<h1><font color='white'>Grid Integration-Check!</font></h1>", Qt.AlignBottom | Qt.AlignCenter, Qt.black)
for i in range(1, 11):
progressBar.setValue(i)
t = time.time()
while time.time() < t + 0.1:
app.processEvents()
time.sleep(2)
splash.close()
Karena itu saya meletakkan splashscreen di folder qgis-python saya (misalnya https://github.com/webgeodatavore/qgis-splash-screens-birthday/raw/master/resized/qgis_version_2.18.png )
Tetapi solusi ini sedikit solusi yang cepat dan kotor.
Apakah tidak mungkin untuk mendapatkan akses ke splashscreen yang dibuat saat startup aplikasi QGIS? Saya mencoba mendapatkan akses dengan menggunakan QgsApplication.instance().findChild(QSplashScreen)
tetapi tidak dapat mengaksesnya.
https://github.com/qgis/QGIS/blob/7bd0285dfdef9456a5929a7b7031270ea0ee2601/src/app/main.cpp#L1286