2010-04-08 51 views
7

使用QListView和QStandardItemModel,是否可以在列表视图中显示图标而不显示关联的文本? QStandardItem定义如下:有没有办法在没有文字的QListView中显示图标?

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

如果我去构建自定义模型的麻烦,我可以解决这个问题吗?

回答

3

是的,你可以做。

首先你创建一个列表view.Then相关的委托,

虽然插入元素列表视图,使用设定数据功能,插入图标和代表的绘画事件您处理绘图图标。我希望它清楚。

+0

我会评估你的回应并回复你。谢谢! – 2010-04-08 17:31:59

+8

@Chris你可以发布这个问题的代码片段吗? – Dmitriy 2011-11-05 23:14:23

+1

代码会很好我同意:自定义代表倾向于给人们意志。 – neuronet 2015-02-10 21:51:25

相关问题