Название: Узнать из Model о View (4.1) Отправлено: igorko от Май 03, 2006, 14:31 Я создал свою MyModel : public QAbstractTableModel
и установил ее на QTableView Подскажите, плз, можно ли из MyModel узнать что-нибудь о QTableView на который она установлена? Например как получить размеры QTableView из MyModel? В доках ничего не нахожу. Спасибо!!! Название: Узнать из Model о View (4.1) Отправлено: Sergeich от Май 03, 2006, 14:41 А на хрена!? Идея MVC как раз и состоит в том, что модель ничего не должна знать о виде.
Название: Узнать из Model о View (4.1) Отправлено: igorko от Май 03, 2006, 17:11 Да Serg,
Чего-то я об этом не подумал. Моя задача такова: мой Delegate:public QItemDelegate создает свои editor-ы для полей таблицы в зависимости от типа поля. Когда я создаю QTextEdit, то хотелось бы чтобы его размер можно было вычислить в зависимости от размера QTableView. А как его "достать" из модели либо делегата - не знаю :( Буду благодарен за любые комментарии. Название: Узнать из Model о View (4.1) Отправлено: Sergeich от Май 03, 2006, 18:01 Как я понял ты юзаешь QWidget * createEditor ( QWidget * parent, ... ) для создания QTextEdit. В данном случае parent - указатель на QTableView.
Название: Узнать из Model о View (4.1) Отправлено: nEoN от Май 04, 2006, 08:34 Цитата: "igorko" Когда я создаю QTextEdit, то хотелось бы чтобы его размер можно было вычислить в зависимости от размера QTableView. А как его "достать" из модели либо делегата - не знаю :( Вообщето View сама подгоняет размер созданного editor'a под размеры ячейки. Если тебе нужен какой то особенный размер, то правильней будет у делегата переопределить виртуальный метод Код: updateEditorGeometry(QWidget *editor, const QStyleOptionViewItem &option, const QModelIndex & index) const; Название: Узнать из Model о View (4.1) Отправлено: igorko от Май 04, 2006, 09:45 Cпасибо nEoN и Sergeich
Я именно в updateEditorGeometry все и делал. (QWidget*)editor->parent()->size() это именно то что мне нужно: теперь мой QTextEdit "вписывается" во View и изменяется с изменением размеров родителя :) Спасибо что просветили. |