Привет мастерам Qt!
Разбираюсь с QMainWindow, пытаюсь создать в нем меню. Создал QAction со ссылкой на функцию во вложенном в QMainWindow объекте:
Python
self.upScaleAct = QAction("Zoom &In (10%)", self.previewArea, shortcut="Ctrl++",
enabled=True, triggered=self.previewArea.upScale)
Сама функция:
Python
def upScale(self):
self.settings.picWidth = int(1.1 * self.settings.picWidth)
self.settings.picHeight = int(1.1 * self.settings.picHeight)
maxSize = min(self.scrollArea.viewport().width(), self.scrollArea.viewport().height())
if self.settings.picWidth > maxSize or self.settings.picHeight > maxSize:
self.settings.picWidth = maxSize
self.settings.picHeight = maxSize
self.curColumns = self.maxColumns()
self.fillViewport(resizeMode = True)
self.scrollArea.ensureWidgetVisible(self.pixmapLabels[self.settings.currentPic],
self.settings.picSpacing, self.settings.picSpacing)
Не работает...
Когда эта функция вызывается из контекста самого previewArea (по событиям) - всё отлично, функция видит атрибуты этого объекта (например, список self.pixmapLabels). Когда же я пытаюсь запустить эту же функцию через меню основного окна - полный игнор, функция все атрибуты объекта previewArea не видит. Что-то я упускаю. Как из родительского объекта запускать функцию (метод) вложенного объекта? Не пинайте сильно, я только пытаюсь разобраться и в Питоне, и в Qt.