Суть проблемы в следующем:
Пытаюсь реализовать disconnect, но почему-то не выходит.
Код: Выделить всё
def save_in_file(self):
if self.excelFile:
if self.colored == True:
self.layerAllot.loadNamedStyle(self.path_style) # загружаю стиль к слою
set_layer_labels(self, self.layerAllot, '"sknr"', 10, enabled = True, drawLabels = True, drawBuffer=False) # включаю подписи
QObject.connect(self.canvas, SIGNAL("mapCanvasRefreshed()"), lambda: exportMap(self)) # жду сигнал, что canvas обновился и выполняю функцию exportMap
elif self.colored == False:
self.layerAllot.loadNamedStyle(self.path_style) # загружаю стиль к слою
set_layer_labels(self, self.layerAllot, '"sknr"', 10, enabled = True, drawLabels = True, drawBuffer=False) # включаю подписи
QObject.connect(self.canvas, SIGNAL("mapCanvasRefreshed()"), lambda: exportMap(self)) # жду сигнал, что canvas обновился и выполняю функцию exportMap
elif self.textFile:
pass
elif self.wordFile:
pass
def exportMap(self):
QObject.disconnect(self.canvas, SIGNAL("mapCanvasRefreshed()"), lambda: exportMap(self)) # пытаюсь отключить сигнал, но не выходит
createPhotoPath = os.path.dirname(__file__) + "\\temporary\\feature.png"
self.canvas.saveAsImage(createPhotoPath, None, "PNG")
returnOriginal(self)
def returnOriginal(self):
if self.colored == True:
set_layer_labels(self, self.layerAllot, '"sknr"', 10, enabled = False, drawLabels = False, drawBuffer=False)
self.canvas.refresh()
elif self.colored == False:
self.layerAllot.loadNamedStyle(getFileStyle.getStyleAllotmentColor(self, True))
self.canvas.refresh()