Название: DecorationRole в TableView Отправлено: Danila_Bagrofff от Июль 24, 2012, 15:50 Подскажите, что нужно указать, или наоборот, что не нужно указывать, чтобы иконки отображались в таблице.
Почему-то вообще нигде никак не хотят отображаться иконки. В модели уже напрямую прописал имя картинки и указал - все ячейки. И все равно нигде не отображается иконка. Код: QVariant AttributesTableModel::data(const QModelIndex &index, int role) const Что может быть не так.. Ну нет иконки в таблице и все... ??? Название: Re: DecorationRole в TableView Отправлено: mutineer от Июль 24, 2012, 15:53 QTableView вообще запрашивает из модели данные по этой роли?
Название: Re: DecorationRole в TableView Отправлено: Danila_Bagrofff от Июль 24, 2012, 15:54 Да, дебагер туда заскакивает, но в таблице на экране ничего нет...
Название: Re: DecorationRole в TableView Отправлено: kambala от Июль 24, 2012, 15:56 убери DisplayRole
Название: Re: DecorationRole в TableView Отправлено: Danila_Bagrofff от Июль 24, 2012, 16:02 убрал, не поможает.
Да и не должно бы мешать - все таки разные они по тематике. Поправил у себя код на такой: Код: if (role == Qt::DecorationRole) isNull не выпадает - то есть проблем бы быть не должно. Название: Re: DecorationRole в TableView Отправлено: kambala от Июль 24, 2012, 16:06 а, я кажется понял :) QApplication::applicationDirPath() возвращает путь без слэша, так что пиши QApplication::applicationDirPath() + "/1.png"
Название: Re: DecorationRole в TableView Отправлено: Danila_Bagrofff от Июль 24, 2012, 16:10 неа, я ваще ему прямой путь писал с:\Temp\1.png и никатит =(
Название: Re: DecorationRole в TableView Отправлено: Danila_Bagrofff от Июль 24, 2012, 16:19 Сделал так, и уже хотя бы пустые поля под картинки появились:
Код: if (role == Qt::DecorationRole) Название: Re: DecorationRole в TableView Отправлено: kambala от Июль 24, 2012, 16:21 только щас понял, что надо возвращать QPixmap, а не QIcon.
хм, нет, документация говорит что можно и QIcon. но я только что пробовал в тестовом проекте через QPixmap – работало. Название: Re: DecorationRole в TableView Отправлено: Danila_Bagrofff от Июль 24, 2012, 16:26 Да вроде как и с иконкой должно бы:
Цитировать Qt::DecorationRole 1 The data to be rendered as a decoration in the form of an icon. (QColor, QIcon or QPixmap) Пиксмап не помог =( Название: Re: DecorationRole в TableView Отправлено: kambala от Июль 24, 2012, 16:29 значит пришло время для выкладывания тестового проекта, в котором воспроизводится ошибка
Название: Re: DecorationRole в TableView Отправлено: Danila_Bagrofff от Июль 24, 2012, 16:49 Все, понял. Картинка создавалась не как png. У нее кривой заголовок. Соответсвенно он ее не может распознать как тип png корректно - потому и не отображает.
|