一、簡(jiǎn)介:

QListWidget是Qt提供的列表控件。它的父類是QListView,實(shí)際上QListWidget是一個(gè)自帶model的view。通常情況下搭配QListWidgetItem(以下簡(jiǎn)稱item)使用。

二:入門(mén):

QListWidget的入門(mén)非常簡(jiǎn)單。只需要添加item就行了。

QListWidget* list = new QListWidget(this); list->addItem("item 1"); list->addItem("item 2"); list->addItem("item 3");

實(shí)際上僅用兩行代碼就入門(mén)了。QListWidget還有其他添加item的方法(add和Insert):

三、精進(jìn)之路:

1.獲取QListWidgetItem.

一開(kāi)始的時(shí)候說(shuō)了QListWidget要搭配QListWidgetItem來(lái)使用,所以在進(jìn)一步玩QListWidget之前我們要學(xué)會(huì)獲取item。獲取item的方法有很多種:

2.美化列表.

在Qt中要說(shuō)到美化,我第一時(shí)間想到的就是樣式表了。不過(guò)這里不討論樣式表,看看它自己的函數(shù)怎么玩。

2.1設(shè)置item的圖標(biāo)使用 void setIcon(const QIcon &icon)

2.2設(shè)置item的文字顏色使用 void setForeground(const QBrush &brush)

2.3設(shè)置item的背景顏色使用 void setBackground(const QBrush &brush)

2.4設(shè)置item的文字字體使用 void setfont(const QFont &font)

2.5設(shè)置item的大小使用void setSizeHint(const QSize &size)

2.6設(shè)置itm的文本對(duì)齊方式使用void setTextAlignment(int alignment)

3.編輯item。

使用openPersistentEditor開(kāi)啟編輯一個(gè)item,與之對(duì)應(yīng)的函數(shù)是closePersistentEditor,測(cè)試代碼:

4.拖拽item。

單純的編輯還不能滿足我們的需求,我們有時(shí)需要直接拖動(dòng)Item來(lái)調(diào)整他們的順序。拖拽并非QListWidget獨(dú)有的功能,它的祖先就有了這個(gè)功能。

list->setDragDropMode(QListWidget::InternalMove);

值得注意的是拖拽不僅僅可以在內(nèi)部進(jìn)行,還可以在多個(gè)控件中進(jìn)行。

5.橫著排

以上看到的列表都是垂直方向排列的,列表也能橫著排。void setFlow(Flow flow),把flow的值設(shè)置為L(zhǎng)eftToRight。搭配

void setWrapping(bool enable)使用可以讓列表一直排成一行。

list->setFlow(QListWidget::LeftToRight);

6.圖標(biāo)模式

在某些應(yīng)用場(chǎng)景下列表只需要展示圖片,那么這時(shí)候使用圖標(biāo)模式就很適合了。void setViewMode(ViewMode mode),圖標(biāo)模式下Icon會(huì)變得很大。

list->setViewMode(QListWidget::IconMode);

若不要文本,只需要把文本設(shè)置為空即可。

作者:fearlazy。您的關(guān)注是我繼續(xù)分享的最大動(dòng)力!o(* ̄︶ ̄*)o

1.《qt如何設(shè)置文字兩端對(duì)齊》援引自互聯(lián)網(wǎng),旨在傳遞更多網(wǎng)絡(luò)信息知識(shí),僅代表作者本人觀點(diǎn),與本網(wǎng)站無(wú)關(guān),侵刪請(qǐng)聯(lián)系頁(yè)腳下方聯(lián)系方式。

2.《qt如何設(shè)置文字兩端對(duì)齊》僅供讀者參考,本網(wǎng)站未對(duì)該內(nèi)容進(jìn)行證實(shí),對(duì)其原創(chuàng)性、真實(shí)性、完整性、及時(shí)性不作任何保證。

3.文章轉(zhuǎn)載時(shí)請(qǐng)保留本站內(nèi)容來(lái)源地址,http://f99ss.com/keji/3223505.html