Есть ли способ отображать значки в QlistView без текста?

StackOverflow https://stackoverflow.com/questions/2597534

  •  25-09-2019
  •  | 
  •  

Вопрос

Использование QLiStView и Q SstandardItemModel, возможно ли отображать значки в представлении списка без отображения связанного текста? Qстандартрит определяется как:

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);
}

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

Это было полезно?

Решение

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

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

Вставляя элементы в список ListView, используйте функцию Set-Data, чтобы вставить значок и в событии Paint Of DELEGET, вы обработаете значок чертежа. Я надеюсь, что это ясно.

Другие советы

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

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top