Russian Qt Forum
Ноябрь 23, 2024, 17:04 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: (решено)Код примера SimpleTreeModel  (Прочитано 3151 раз)
pethead
Гость
« : Декабрь 04, 2010, 08:52 »

беру код из примера и пробую вставить в свою программу, в конструкторе главного окна QMainWindow, и не отображается заполнение дерева, появляется отдельное окно дерева, ок, но пустое.
а если тот же код вставить в main то тоже отдельное окно, ок, но заполненное. почему?
в трассировке кода чтение файла, и создание узлов есть в обеих вариантах.

Код:

        QFile file(":/default.txt");
   file.open(QIODevice::ReadOnly);
   TreeModel model(file.readAll());
   file.close();

   QTreeView view;
   view.setModel(&model);
   view.setWindowTitle(QObject::tr("Simple Tree Model"));
   view.show();


вот картинка. первое окно создано в конструкторе QMainWindow, второе в main.
« Последнее редактирование: Декабрь 04, 2010, 09:55 от pethead » Записан
BRE
Гость
« Ответ #1 : Декабрь 04, 2010, 09:08 »

Потому, что model и/или view определяется на стеке и соответственно разрушается при выходе из конструктора.
Записан
pethead
Гость
« Ответ #2 : Декабрь 04, 2010, 09:45 »

сорри, ступил.

*someoff: где почитать про применимость того или иного варианта создания экземпляра класса? суть знаю, а про практичность не совсем.
с ув. бывший дельфист.
« Последнее редактирование: Декабрь 04, 2010, 09:54 от pethead » Записан
BRE
Гость
« Ответ #3 : Декабрь 04, 2010, 10:03 »

*someoff: где почитать про применимость того или иного варианта создания экземпляра класса? суть знаю, а про практичность не совсем.
с ув. бывший дельфист.

В любой книжке по C++
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.046 секунд. Запросов: 20.