3 votos

Cómo llamar a la clase QgisInterface en un plugin

Estoy intentando acceder al QgsLayerTreeView clase a través de la QgisInterface en el plugin de python que he creado. En última instancia, quiero ser capaz de devolver el nodo seleccionado (grupo o capa) de la QgsLayerTree .

El problema que me encuentro es que no sé cómo llamarlo. La mayoría de la información sugiere usar iface como forma de acceder a la interfaz, pero no se reconoce cuando se llama desde el plugin (funciona bien desde la consola de python en QGIS).

¿Hay alguna otra forma de crear una instancia del QgisInterface ¿clase? ¿O hay alguna forma de importar la clase iface para que funcione en mi plugin?

4voto

bugmenot123 Puntos 770

Sus plugins __init__() debería tomar la interfaz como argumento en la instanciación, probablemente con el nombre iface .

Si se almacena como variable de instancia allí a través de una línea como

self.iface = iface

puedes usarlo en cualquiera de los métodos de tu plugin a través de self.iface .

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X