2010-04-08 93 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

相關問題