I tried to connect Qt signal of QgsCheckableComboBox
when checkedItemsChanged
.
I tried below:
def showEvent(self, event):
print("show event")
self.loadLayersToCombox()
self.cmbLayers.checkedItemsChanged.connect(self.updateLables)
def loadLayersToCombox(self):
layers = [x.name() for x in QgsProject().instance().mapLayers().values()]
self.cmbLayers.clear()
self.cmbLayers.addItems(layers)
def updateLables(self):
print("updateLables")
chkditems = self.cmbLayers.checkedItems()
self.checkedlayer = [self.getLayer(x) for x in chkditems if self.getLayer(x) is not None]
for x in self.checkedlayer:
self.totalvalue = + x.featureCount()
print(self.totalvalue)
self.lblCurrentval.setText("0")
self.lblTotalval.setText(str(self.totalvalue))
def getLayer(self, name):
try:
return self.project.mapLayersByName(name)[0]
except IndexError:
return None
I am using QGIS 3.14 below
self.cmbLayers.checkedItemsChanged.connect(self.updateLables)
not connecting self.updateLables
.