qlistview是基於model,而qlistwidget是基於item。這是它們的本質區別。
往qlistview中新增條目需借助qabstractlistmodel:
如: mainwindow::mainwindow(qwidget *parent) :
qmainwindow(parent),
ui(new ui::mainwindow)
而在qlistwidget中新增條目可以直接additem
如: qlistwidget list;
list.setviewmode(qlistwidget::iconmode );
list.setresizemode(qlistwidget::adjust);
list.setmovement(qlistwidget::static);
for(int i =0; i < 100 ; i ++)
我們可以通過訊號和槽的方式對列表控制項的選項進行響應,例如
connect(list, signal(currenttextchanged(qstring)), this, slot(settext(qstring)));
總之,qlistwidget是繼承qlistview,qlistview是基於model的,需要自己來建模(例如建立qstringlistmodel、qsqltablemodel等),
儲存資料,這樣就大大降低了資料冗餘,提高了程式的效率,但是需要我們對資料建模有一定了解,初學者就先不要考慮了,
而qlistwidget是乙個公升級版本的qlistview,它已經自己為我們建立了乙個資料儲存模型(qlistwidgetitem),操作方便,直接呼叫additem即可新增專案(icon,文字)。
QList和QStringList的用法
h ifndef mylistview h define mylistview h include class qlistview class qstandarditemmodel class mylistview public qwidget endif mylistview h cpp incl...
QListView控制項使用
1 說明 這個控制項常與qlistwidget進行比較,都經常用於資料的展示 row column 2 只用到了行的操作,用於展示路徑或其他條目 大致過程是 構建qstringlist 物件 構建qstringlistmodel物件,將qstringlist物件作為引數 使用setmodel qst...
qlist的遍歷 List遍歷和查詢
首先宣告本文不是討論linq,在framwork2.0中也不支援linq操作的,主要是記錄一下list集合的使用方法。list 一般主要用到的查詢遍歷方法 find 搜尋指定謂詞所定義條件相匹配的元素,並返回整個list中的第乙個匹配元素。findlast 搜尋指定謂詞所定義條件相匹配的元素,並返回...