Russian Qt Forum
Ноябрь 01, 2024, 02:07
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Model-View (MV)
>
Model/View Programming
Страниц: [
1
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Model/View Programming (Прочитано 9696 раз)
Steven_Orko
Гость
Model/View Programming
«
:
Декабрь 26, 2005, 19:45 »
Подскажите, что можно почитать на русском, чтобы понять, как это устроенно в Qt? как строить собственные модели и т.п. С английским большая проблемма...
Записан
Racheengel
Джедай : наставник для всех
Offline
Сообщений: 2679
Я работал с дискетам 5.25 :(
Model/View Programming
«
Ответ #1 :
Декабрь 27, 2005, 12:09 »
Я думаю, там и русский не поможет.... ИМХО так тупо реализовать - надо еще додуматься...
Записан
What is the 11 in the C++11? It’s the number of feet they glued to C++ trying to obtain a better octopus.
COVID не волк, в лес не уйдёт
Steven_Orko
Гость
Model/View Programming
«
Ответ #2 :
Декабрь 27, 2005, 16:43 »
ну а все-таки??? Какое-нибудь понятное описание для использования этого механизма гденть есть?
Записан
Sergeich
Гость
Model/View Programming
«
Ответ #3 :
Декабрь 27, 2005, 16:47 »
Для начала можешь посмотреть перевод статейки из QQ :
http://hardclub.donntu.edu.ua/projects/qt/qq/qq10-mvc.html
Записан
Racheengel
Джедай : наставник для всех
Offline
Сообщений: 2679
Я работал с дискетам 5.25 :(
Model/View Programming
«
Ответ #4 :
Декабрь 28, 2005, 11:18 »
Пробовал вчера разобраться с этим чудом...
Вроде идею понял, но... НАХРЕНА ТАК УСЛОЖНЯТЬ?
Если глубоко подумать над всем этим... Понятие модели совсем лишнее, проще напрямую обмениваться данными с делегатом... Да и не понятно, как можно для одной модели поставить несколько делегатов (если вообще можно).
Кто-нить это юзал вообще?
Записан
What is the 11 in the C++11? It’s the number of feet they glued to C++ trying to obtain a better octopus.
COVID не волк, в лес не уйдёт
Steven_Orko
Гость
Model/View Programming
«
Ответ #5 :
Декабрь 28, 2005, 12:40 »
Да, теперь уже я юзаю.
))) Создал новую модель и виджет наподобии QTableWidget. Только со своими отдельными свойствами. А так в общем ОЧЕНЬ пожий на QTableWidget. По ссылке Sergeich как пример было, кажется, написано, как использовать несколько делеагатов. Не помню, вчера ночью читал :wink: ))). А так ты действительно прав... зачем так усложнять? Особенно,е сли использовать абстрактные классы для отображения в таблице, дереве, списке и т.д.? Если кому надо, могу потом как-нибудь текст виджета выложить куда-нибудь, если интересно... но это как допишу )))
Записан
Racheengel
Джедай : наставник для всех
Offline
Сообщений: 2679
Я работал с дискетам 5.25 :(
Model/View Programming
«
Ответ #6 :
Декабрь 28, 2005, 13:51 »
мне реально нужна ПРОСТАЯ вещь. Есть несколько объектов, которые надо отобразить в виде дерева. Но во первых, надо максимально просто их добавлять, во-вторых, отрисовывать ПО-РАЗНОМУ. Но мы имеем лишь один делегат на одну модель, а QTreeWidgetItem не позволяет выполнять собственную отрисовку, как это было в 3-й версии
Только чтобы сделать это, мне надо фигачить свою модель, в нее вставлять свой список, делать методы для доступа к нему... жуть...
Записан
What is the 11 in the C++11? It’s the number of feet they glued to C++ trying to obtain a better octopus.
COVID не волк, в лес не уйдёт
Steven_Orko
Гость
Model/View Programming
«
Ответ #7 :
Декабрь 28, 2005, 13:56 »
Слушай, так это есть в примерах к Qt... посмотри реализацию простой модели для дерева... Кажется "itemviews/simpletreemodel/treeitem.cpp", ну и так далее... там разберешься )))
Записан
Racheengel
Джедай : наставник для всех
Offline
Сообщений: 2679
Я работал с дискетам 5.25 :(
Model/View Programming
«
Ответ #8 :
Декабрь 28, 2005, 14:10 »
Да я разобрался, просто это все равно, что "из пушки по воробьям".... не вяжется со слоганом троллей "code less - create more"
Записан
What is the 11 in the C++11? It’s the number of feet they glued to C++ trying to obtain a better octopus.
COVID не волк, в лес не уйдёт
Sergey B.
Программист
Offline
Сообщений: 544
Model/View Programming
«
Ответ #9 :
Август 07, 2007, 11:18 »
Ну вот, понабрались опыта, теперь как уже опытные Model\View кодеры, давайте поговорим о недостатках реализации в Qt этого чуда.
Я использовал модели только в Java (акромя Qt), должен сказать, что работа моделей с отображениями, намного проще.
К примеру:
есть список, есть модель, даже вставляя данные в модель, я всегда могу сделать list.getSlectedItem() И получить значение текущего элемента, в Qt надо ловить в model currentIndex...
, и из него уже получать значение
В принципе терпимо, только кода больше...
Записан
Gryz
Гость
Model/View Programming
«
Ответ #10 :
Август 07, 2007, 11:49 »
Но ведь необходимые часто используемые методы можно самому реализовать. Всё для этого есть.
Записан
SABROG
Гость
Model/View Programming
«
Ответ #11 :
Август 07, 2007, 16:47 »
Цитата: "Sergey B."
Ну вот, понабрались опыта, теперь как уже опытные Model\View кодеры, давайте поговорим о недостатках реализации в Qt этого чуда.
Я использовал модели только в Java (акромя Qt), должен сказать, что работа моделей с отображениями, намного проще.
К примеру:
есть список, есть модель, даже вставляя данные в модель, я всегда могу сделать list.getSlectedItem() И получить значение текущего элемента, в Qt надо ловить в model currentIndex...
, и из него уже получать значение
В принципе терпимо, только кода больше...
Мне кажется в Qt понятия разделены. Одно дело компонент для работы с итемами и другое - источник, хранилище данных. Задача компонента работать с представлением итема, а задача модели с его содержимым. Поэтому понятие выделенный и текущий элемент относится к компоненту, а не к модели. Сегодня это один компонент показывающий данные одной модели и позволяющий выделять элементы, а завтра это другой компонент показывающий данные модели, но позволяющий элементы не выделять, а приближать или отдалять в 3х мерном пространстве. И будет глупо требовать от модели показать какие итемы были приближены или отдалены.
Записан
Страниц: [
1
]
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...