Есть ли способ отображать значки в QListView без текста? - PullRequest
7 голосов
/ 08 апреля 2010

Используя QListView и QStandardItemModel, возможно ли отображать значки в виде списка без отображения связанного текста? QStandardItem определяется так:

QStandardItem ( const QIcon & icon, const QString & text ) 

Так что, кажется, требуется какая-то текстовая строка - мне нужен только значок. Если я использую следующий код, я получаю значки в соответствии с запросом, но я также получаю пустой текстовый элемент под ними. Я не хочу этого

ImageListView->setViewMode( QListView::IconMode );
{
     QStandardItemModel *iStandardModel = new QStandardItemModel(this);
     QStandardItem* item1 = new QStandardItem(QIcon("images/shield-280x280.png"),"");
     QStandardItem* item2 = new QStandardItem(QIcon("images/shield-280x280.png"),"");

     iStandardModel->appendRow(item1);
     iStandardModel->appendRow(item2);
     ImageListView->setIconSize(QSize(100,100));
     ImageListView->setUniformItemSizes(true);
     ImageListView->setDragDropMode(QAbstractItemView::DropOnly);
     ImageListView->setModel(iStandardModel);
}

Если я решу создать собственную модель, могу ли я решить эту проблему?

Ответы [ 2 ]

3 голосов
/ 08 апреля 2010

Да, вы можете сделать.

сначала вы создаете делегат, связанный с представлением списка. Затем,

Вставляя элементы в представление списка, используйте функцию set-data для вставки значка и в событие рисования делегатаВы обрабатываете значок чертежа.Я надеюсь, что все ясно.

0 голосов
/ 20 февраля 2019

Как показывать иконки без текста в QListWidget?

из вышеприведенного поста, вы можете использовать NULL, чтобы избавиться от этого пустого пространства

...