Название: Qt 4.5.0 Связь модели с различными данными Отправлено: Danila_Bagrofff от Октябрь 13, 2009, 06:53 Я впервые реализую модель/представление, и мне пока не все ясно. Помогите связать набор собственных данных с моделью для отображения в таблице. Но это фактически список данных.
Проще говоря, нужно вывести справочную информацию по имеющимся данным в разных классах. class THouse { THouse(); int count; //количество домов QList <double> s; //массив площадей домов QList <QString> name; //массив имен владельцов } Как привязать вывод данных модели к изменяющемуся количеству данных. И к разнотипным? Название: Re: Qt 4.5.0 Связь модели с различными данными Отправлено: CroCIV от Октябрь 13, 2009, 07:49 как ты хочешь их связать друг с другом? что будешь выставлять по горизонтали а что по вертикали? есть QStandartItemModel на нем можно реализовать если не все то многое, остальное можно реализвать используя набор QStandartItemModel. Работает так:
Код: qsimPg2 = new QStandardItemModel(0,14); Название: Re: Qt 4.5.0 Связь модели с различными данными Отправлено: CroCIV от Октябрь 13, 2009, 07:58 за последние два месяца только этим и занимаюсь что данными туда сюда жанглирую :'(, спрашивай :)
Название: Re: Qt 4.5.0 Связь модели с различными данными Отправлено: Danila_Bagrofff от Октябрь 13, 2009, 08:16 Вид будет весьма прост: таблица без сетки с таким видом:
кол-во домов: 10 площадь 1 дома: 10,5 площадь второго дома: 20,6 владелец 1 дома: Петров владелец второго: Иванов То есть простая таблица. Щас попробую что ты мне написал, спасибо. А если будет меняться в QList кол-во строк в представлении таблицы будет меняться все полностью? Название: Re: Qt 4.5.0 Связь модели с различными данными Отправлено: CroCIV от Октябрь 13, 2009, 08:36 в том и прелесть Qt что модельные виджеты не хранят данные модели они могут только их отображать (ну правда некоторые виджеты имеют собственную модель, такие как QTreeWidget и QTableWidjet) для этого им нужен указатель на любую модель, и будет работать.
Название: Re: Qt 4.5.0 Связь модели с различными данными Отправлено: Danila_Bagrofff от Октябрь 13, 2009, 10:07 Код: qsimPg2 = new QStandardItemModel(0,count); setModel - ошибка. Не может что-то сделать. Что не так? Название: Re: Qt 4.5.0 Связь модели с различными данными Отправлено: CroCIV от Октябрь 13, 2009, 10:13 а текст ошибки можно увидеть?
Название: Re: Qt 4.5.0 Связь модели с различными данными Отправлено: Danila_Bagrofff от Октябрь 13, 2009, 12:11 отставить. моя невнимательность. инициализация tableView после обращения =) Неперекопировал =)
Разбираемся дальше. ) Спс =) Название: Re: Qt 4.5.0 Связь модели с различными данными Отправлено: Danila_Bagrofff от Октябрь 13, 2009, 13:51 А как сделать реакцию на изменение данных в модели?
Название: Re: Qt 4.5.0 Связь модели с различными данными Отправлено: Авварон от Октябрь 13, 2009, 14:03 если есть модель, то доступ к данным из программы осуществляется только через нее (хороший тон и все такое). Если же данные могут изменяться извне (например файловая система), то нужно делать либо сигнал в классе с данными, либо класс-наблюдатель между моделью и данными (в случае с ФС обертка на FileSystemWatcher), с тем же сигналом для модели.
|