本文整理汇总了Python中qgis.gui.QgsExpressionBuilderWidget.setProject方法的典型用法代码示例。如果您正苦于以下问题:Python QgsExpressionBuilderWidget.setProject方法的具体用法?Python QgsExpressionBuilderWidget.setProject怎么用?Python QgsExpressionBuilderWidget.setProject使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类qgis.gui.QgsExpressionBuilderWidget
的用法示例。
在下文中一共展示了QgsExpressionBuilderWidget.setProject方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: testLayers
# 需要导入模块: from qgis.gui import QgsExpressionBuilderWidget [as 别名]
# 或者: from qgis.gui.QgsExpressionBuilderWidget import setProject [as 别名]
def testLayers(self):
""" check that layers are shown in widget model"""
p = QgsProject.instance()
layer = QgsVectorLayer("Point", "layer1", "memory")
layer2 = QgsVectorLayer("Point", "layer2", "memory")
p.addMapLayers([layer, layer2])
w = QgsExpressionBuilderWidget()
m = w.model()
# check that layers are shown
items = m.findItems('layer1', Qt.MatchRecursive)
self.assertEqual(len(items), 1)
items = m.findItems('layer2', Qt.MatchRecursive)
self.assertEqual(len(items), 1)
# change project
p2 = QgsProject()
layer3 = QgsVectorLayer("Point", "layer3", "memory")
p2.addMapLayers([layer3])
w.setProject(p2)
m = w.model()
items = m.findItems('layer1', Qt.MatchRecursive)
self.assertEqual(len(items), 0)
items = m.findItems('layer2', Qt.MatchRecursive)
self.assertEqual(len(items), 0)
items = m.findItems('layer3', Qt.MatchRecursive)
self.assertEqual(len(items), 1)