Уведомления

Группа в Telegram: @pythonsu

#1 Янв. 29, 2015 02:39:22

Pomidor
Зарегистрирован: 2015-01-23
Сообщения: 26
Репутация: +  0  -
Профиль   Отправить e-mail  

QWidget - добавить вкладку из внешнего класса

День добрый, подскажите пожалуйста, как добавить вкладку и передать её название из внешнего окна.
Вот код внешнего класса:

class MyPopup(QWidget):
    def __init__(self):
        QWidget.__init__(self)
        textField = QLineEdit(self)
        textField.setGeometry(50, 50, 300, 20)
        btn1_del = QPushButton(u"создать вкладку", self)
        btn1_del.clicked.connect(lambda: MainWidget().add_new_tab(textField.displayText()))
        btn1_del.move(150, 100)
Код главного окна:
class MainWidget(QWidget):
...
        self.tab_widget = QTabWidget()
        self.tab_widget.setCornerWidget(self.tabButton)
        self.tabButton.clicked.connect(self.open_popup_tab)
        self.tab1 = QWidget()
        self.tab_widget.addTab(self.tab1, u"Узлы")
...
    def add_new_tab(self, tab_tittle):
        print(tab_tittle)
        new_tab = QWidget()
        self.tab_widget.addTab(new_tab, u"11")

И вот когда ввожу в textField в открывающемся окне текст и жму клавишу вроде бы всё передаётся без вопросов в функцию, даже принтит текст, но не создаётся новая вкладка. Подскажите пожалуйста, в чём проблема?
Заранее спасибо)

Отредактировано Pomidor (Янв. 29, 2015 02:41:58)

Офлайн

#2 Янв. 30, 2015 01:01:56

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 10015
Репутация: +  857  -
Профиль   Отправить e-mail  

QWidget - добавить вкладку из внешнего класса

Pomidor
lambda: MainWidget().add_new_tab
Каждый раз создаёшь окно, тогда как надо обращаться к уже существующему.



Офлайн

#3 Янв. 31, 2015 00:42:43

Pomidor
Зарегистрирован: 2015-01-23
Сообщения: 26
Репутация: +  0  -
Профиль   Отправить e-mail  

QWidget - добавить вкладку из внешнего класса

Угу, работает)
Спасибо большое)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version