Название: Структура приложения, с главным окном, подобным mail-клиенту. Как лучше сделать? Отправлено: xintrea от Июнь 09, 2008, 16:47 Здравствуйте господа!
Делаю сейчас небольшое приложение на QT4. Главное окно состоит из трех областей, подобных любому классическому mail-клиенту. То есть состоит окно из - Дерева папок (слева) - Списка записей в текущей выбраной папке (справа сверху) - Текста текущей выбраной записи (справа снизу) Код: +--------+---------------------+ В данный момент реализовал дерево папок (считывается из XML файла в DOM, потом преобразуется в Item как в примере Editable Tree Model). Теперь нужно каким-то образом при выборе ветки, содержащей записи, показывать список этих записей (справа сверху). Заголовки записей (название, дата создания, ссылка на файл) хранятся в том же XML дереве. А текст записей лежит в отдельном файле для каждой записи. И вот вопрос - как лучше реализовать данную структуру на уровне объектов? Дерево планируется большое, записей много, ~50Мб текстовой информации, размер текста каждой записи ~20-50Кб текста в виде rich-форматирования. Я планирую сделать так Сейчас есть объект "model", включающий в себя ссылку на корневой Item-объект дерева папок. И есть куча Item-объектов дерева папок. Они храняться все время работы программы. В классе Item-объектов дерева я сделаю еще одно свойство - ссылку на объект класса "tablemodel". Можно ли это сделать? Сможет ли вид отобразить такую модель с "лишними" свойствами? "Tablemodel" в свою очередь является моделью таблицы записей, хранимых в папке. "Tablemodel" в свою очередь является моделью таблицы записей, хранимых в папке. При выборе папки, в которой есть записи, воткну соответсвующий объект "tablemodel" в вид таблицы записей (справа сверху). Ну и динамически подгружу текст первой записи, и покажу его справа внизу. Правильна ли последовательность действий? Или в таком приложении надо делать структуру и взаимодействие объектов как-то по-другому? Просто я слабо занаю как C++ так и QT, и не хотелось бы переделывать проект из-за того, что изначально был выбран не тот подход к конструкции классов. Название: Re: Структура приложения, с главным окном, подобным mail-клиенту. Как лучше сделать? Отправлено: lit-uriy от Июнь 09, 2008, 23:37 посмотри пример "интервью" (%QTDIR%\demos\interview), он правда сделан на основе QDirModel, но сходная идея.
|