¿Es posible mostrar nuestro mensaje personalizado en la barra de estado de QGIS usando python?

14

¿Hay alguna forma de mostrar nuestro mensaje personalizado en la barra de estado de Qgis usando python? Al igual que en arcgis IApplication.statusbar.message(0) = "Please wait..."

así que hay alguna opción para mostrar la barra de progreso en Qgis como IApplication.progressbar.show()

    
pregunta venkat 22.04.2013 - 12:06

1 respuesta

34

Barra de estado

Hay iface.mainWindow (). statusBar () que devuelve un QStatusBar

iface.mainWindow().statusBar().showMessage( u"Hello World" )

MessageBar

ApartirdeQGIS2.0tambiénhay QgsMessageBar que puede mostrar mensajes discretos

iface.messageBar().pushInfo(u'My Plugin says', u'Hey there')

Avanzado

LabarrademensajestambiénpuedemostrarcualquierQWidget(como QProgressBar ) con un botón de cierre y un tiempo de espera (5 segundos en el ejemplo).

from PyQt4.QtGui import QProgressBar
from qgis.gui import QgsMessageBar
msgBar = iface.messageBar()

pb = QProgressBar( msgBar )
msgBar.pushWidget( pb, QgsMessageBar.INFO, 5 )

msg = msgBar.createMessage( u'Hello World' )
msgBar.pushWidget( msg, QgsMessageBar.WARNING, 5 )

PuedeencontrarmásinformaciónsobreQgsMessageBarenestarespuestaporNathanW ¿Cómo abordar el nuevo QgsMessageBar" Task-Completed "en Python? Gracias por señalar Curlew

Legado

En la consola de Python para QGIS < 1.9 sería:

qgis.utils.iface.mainWindow().statusBar().showMessage( u"Hello World" )
    
respondido por el Matthias Kuhn 22.04.2013 - 12:27

Lea otras preguntas en las etiquetas