Форум программистов, компьютерный форум CyberForum.ru Форум программистов | Компьютерный форум | Форум web-программистов | Форум по электронике и бытовой технике | Форум о софте | Научный форум | Карьера и бизнес
CyberForum.ru - форум программистов и сисадминов > Форум Форум программистов > Форум Python > Форум Python: Графика
Восстановить пароль Регистрация

Ответ Создать новую тему
 
24.12.2012, 07:08   #1
PAVEL_USER
Форумчанин
Регистрация: 28.12.2010
Сообщений: 129
Репутация: 22 (22)
Лучшие ответы: 1
PyQT4 Динамическое создание окна / Python: Графика

Здравствуйте!

В QtDesigner создал две формы FrmMain и FrmGroupManagement, полученный программный код использую через множественное наследование, как описано здесь.
В обработчике сигнала кнопки на форме FrmMain создаю экземпляр второй формы FrmGroupManagement и вызываю метод show() в результате, форма FrmGroupManagement появляется и сразу исчезает. Никак не могу понять в чем проблема

Если вызывать формы следующим образом, то все чудесно работает:

Код Python
1
2
3
4
5
6
7
8
9
10
if __name__ == '__main__':
    app = QtGui.QApplication(sys.argv)
    
    frm1 = FrmMain()
    frm1.show()
    
    frm2 = FrmGroupManagement()
    frm2.show()
     
    sys.exit(app.exec_())
Но если вызывать вторую форму по сигналу из первой формы, то она сразу закрывается... Может проблема кроется в иерархии? Прошу помощи...
24.12.2012, 07:08
AdAgent
Объявления
29.12.2012, 12:15  [ТС]   #2
PAVEL_USER
Форумчанин
Регистрация: 28.12.2010
Сообщений: 129
Репутация: 22 (22)
Лучшие ответы: 1
PyQT4 Динамическое создание окна / Python: Графика

Проблема решается следующим образом:

Код Python
1
2
3
4
def BtnGroupClicked(self):
        print('BtnGroupClicked')
        self.frm = FrmGroupManagement()
        self.frm.show()
Сборщик мусора уничтожал форму по завершении процедуры BtnGroupClicked, так как она была объявлена как локальная переменная. После завершения выполнения процедуры ссылок на эту переменную не остается и её судьба печальна...
Другие темы раздела
Python С чего начать писать аудиоплеер? Python 3.3
Приветствую! :) Собственно проблема в том, что я начал изучать ЯП Python. Уже дошел к функциям, и до-сих пор ничего я не напрограммировал. Это обстоятельство меня очень удручает, особенно на фоне восторженных криков других "Ъ-прогеров", что они после прочтения пары глав в книжке или оф.доке они...
Размеры меток Python
Доброго времени суток! Помогите пожалуйста! Есть прога парсинг центробанка. В результате ее работы в пдф файл выводится график курса валют. Нужно под осью икс в графике сделать так чтобы метки начала и конца месяца отличались от меток дней import lxml.html from string import split from...
29.12.2012, 12:15
Yandex
Объявления
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать новую тему

Похожие темы
Тема Раздел Автор Дата
LINQ Создание лямбда-выражения средствами Expression (динамическое создание LINQ-запроса)
Доброго времени суток, уважаемые форумчане, вот такая проблема. Есть класс Man. public class Man { public string FirstName { get; set; } } Нужно динамически формировать LINQ-запросы к массиву List<Man>, потому что критерии для запросов задаются пользователем. mans.Where(m =>...
LINQ Etrimus 11.05.2014 14:03
C++ WinAPI Создание окна из диалогового окна
Есть необходимость создавать новое окно прямо из диалогового по происхождению некоторого события, например нажатия кнопки, вопрос: как это сделать из обработчика диалогового окна новое окно-то ? :( Вот есть у меня обработчик мой, те из данных у меня только hDlg, ещё можно в принципе в начале...
C++ и WinAPI Gepar 08.06.2013 02:08
C++ Динамическое изменение консольного окна, с избежанием появления полос прокрутки
Здравствуйте, коллеги. Я нуждаюсь в помощи и совете. #include <iostream> #include <windows.h> #include <conio.h> #include <locale> using namespace std; const int WIDTH = 59;
С++ для начинающих Faerror 05.08.2012 15:11
C++/CLI WinForms Динамическое создание окна webBrowse
Здраствуйте. Я слепил простой веб браузер, но он может только переходить на заранее забитые адреса или полностью написанный адрес в textBox, а если я в гугле к примеру нашёл что-нибудь то при нажатии на название какого-нибудь сайта, открывается окно Operы. Напишите пожалуйста - как и что надо...
C++/CLI Windows Forms Bllaaa 04.05.2012 18:08
C++ Qt Динамическое создание
В qt я новичок поэтому буду краток. Идея в том что пользователь указывает размерность и нажимая на кнопку создается двумерный динамический массив виджетов QLineEdit на данной этапе у меня не получается создать двумерный динамический массив(( Вот код: dialog.h #ifndef DIALOG_H #define...
Qt pikan 16.04.2012 10:04
Опции темы

Текущее время: 21:09. Часовой пояс GMT +4.

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.7 PL3
Copyright ©2000 - 2014, vBulletin Solutions, Inc.