Название: [РЕШЕНО] QTableView - выводятся CheckBox'ы ??? Отправлено: sergeyvl12 от Август 23, 2009, 19:20 Добрый день. Очень надо разобраться со связкой QTableView - QAbstractTableModel. Создал простейшую модель таблицы (код см. ниже), прикрутил ее к стандартному QTableView...
Все работает норм (данные выводятся) но почему-то во всех ячейках слева от значений стоят квадратики (я так понял что это чекбоксы). Странное поведение по умолчанию... Подскажите как от них избавиться? Код: class PersonalInfoTableModel: public QAbstractTableModel Название: Re: QTableView - выводятся CheckBox'ы ??? Отправлено: BRE от Август 23, 2009, 19:25 Добрый день. Очень надо разобраться со связкой QTableView - QAbstractTableModel. Создал простейшую модель таблицы (код см. ниже), прикрутил ее к стандартному QTableView... В методе data нужно возвращать определенные значения для каждой роли или вызвать метод базового класса.Все работает норм (данные выводятся) но почему-то во всех ячейках слева от значений стоят квадратики (я так понял что это чекбоксы). Странное поведение по умолчанию... Подскажите как от них избавиться? Код
Название: Re: QTableView - выводятся CheckBox'ы ??? Отправлено: sergeyvl12 от Август 23, 2009, 19:38 Судя по документации:
QAbstractTableModel::data() - такой функции нет. QAbstractItemModel::data() - чисто виртуальная функция. Как следствие - ошибка при линковке :) Название: Re: QTableView - выводятся CheckBox'ы ??? Отправлено: denka от Август 23, 2009, 19:59 Возвращай QVariant(), то есть так:
Код: QVariant data ( const QModelIndex & index, int role = Qt::DisplayRole ) const Название: Re: QTableView - выводятся CheckBox'ы ??? Отправлено: BRE от Август 23, 2009, 20:07 Судя по документации: Упс, сори зарапортовался. ;)QAbstractTableModel::data() - такой функции нет. QAbstractItemModel::data() - чисто виртуальная функция. Как следствие - ошибка при линковке :) Название: Re: QTableView - выводятся CheckBox'ы ??? Отправлено: sergeyvl12 от Август 23, 2009, 22:06 Спасибо: BRE, den'ka
Попутно узнал что за чекбокс отвечает Qt::CheckStateRole. Видимо мою дату он принимал за "false" потому что квадратики были "unchecked". |