Durante el inicio de QGIS, se muestran mensajes de estado en la parte inferior de la pantalla de bienvenida, como "restaurar complementos cargados".
Estoy usando una función startup.py desde la cual me gustaría informarle al usuario qué parte de mi script de inicio se ejecuta en este momento.
¿Es posible mostrar esta información en la pantalla de bienvenida?
Editar1:
Como solución, logré usar mi propia pantalla de inicio durante el inicio:
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()
Por lo tanto, puse la pantalla de bienvenida en mi carpeta qgis-python (por ejemplo https://github.com/webgeodatavore/qgis-splash-screens-birthday/raw/master/resized/qgis_version_2.18.png )
Pero esta solución es una solución un poco rápida y sucia.
¿No es posible obtener acceso a la pantalla de bienvenida creada durante el inicio de la aplicación QGIS? Intenté obtener acceso usando QgsApplication.instance().findChild(QSplashScreen)
pero no pude acceder a él.
https://github.com/qgis/QGIS/blob/7bd0285dfdef9456a5929a7b7031270ea0ee2601/src/app/main.cpp#L1286