Импорт переменных между двумя интерфейсами python qgis

Я разрабатываю плагин в qgis. У меня есть один интерфейс (MMMM.py) с несколькими кнопками, и одна из них открывает новый интерфейс (ABC.py), где я ввожу значения. Моя цель — прочитать эти значения в основном интерфейсе (первом). Итак, у меня есть сценарий для каждого интерфейса, но когда я импортирую переменные, у меня возникает несколько ошибок. У меня проблемы с импортом этих переменных.

второй скрипт с именем ABC.py

class ABC(QDialog, Ui_ABC):

    def __init__(self, iface):
       ...     

    def defineABC(self):

        x = self.input_x.text()
        y = self.input_y.text()
        return x, y

первый (основной) скрипт с именем MMMM.py

class MMMM(QDialog, Ui_MMMM):

    def __init__(self, iface):
       ...

    def graph(self):
       import ABC
       x = ABC.ABC()
       xc = x.defineABC()

Я пробовал несколько способов импортировать значения x и y в основной интерфейс, но у меня всегда были ошибки. Я работаю в qgis.

Что я делаю неправильно?


person user27513    schedule 07.05.2014    source источник


Ответы (1)


это сработает:

from ABC import ABC
class MMMM(QDialog, Ui_MMMM):

  def __init__(self, iface):
    ...

  def graph(self):
    c = ABC()
    x, y = c.defineABC()

в противном случае вы можете установить x и y в ABC (выполнив self.x = ...), а затем получить к ним доступ с помощью c.x

person Denis Rouzaud    schedule 08.05.2014
comment
Спасибо. Я понял! Спасибо. - person user27513; 08.05.2014
comment
Как это сделать. Можешь мне объяснить? - person user27513; 08.05.2014
comment
слева от моего ответа, если он подключен, вы должны увидеть флажок, чтобы отметить подтверждение, и стрелки +1/-1 к ответу. - person Denis Rouzaud; 08.05.2014