Wie kann ich eine Ebene nach dem Erstellen ausblenden / anzeigen? Ich kann das Rendern einer bestimmten Ebene aktivieren / deaktivieren, indem ich das Kontrollkästchen über QGIS aktiviere. Dies muss jedoch programmgesteuert über Python-Code erfolgen.
Wie kann ich ein Label im Python-Code ein- / ausblenden (nicht entfernen)?
Ich suche so etwas wie:
aLayer = self.addVectorLayer(uri.uri(), layerName, self.dbConn.getProviderName())
aLayer.Hide()
....
aLayer.Show()
qgis
python
qgis-plugins
Heisenbug
quelle
quelle
vl
(aus dem ähnlichen Codebeispiel in einer früheren Frage) in geändert habenaLayer
. Es ist leicht, den Kleinbuchstabenl
mit der Ziffer zu verwechseln1
.Antworten:
Sie können die Ebenensichtbarkeit über das Legendenobjekt steuern. Hier ist es mit Ihrem obigen Beispielcode:
Hier ist die Dokumentation für
legendInterface
: http://qgis.org/api/classQgsLegendInterface.htmlViel Glück!
quelle