PyQt5 高階控制項使用(QListWidget)

2022-08-30 11:06:13 字數 2620 閱讀 8513

qlistwidget是乙個用於顯示資料的列表,每個條目中都是乙個qlistwidgetitem物件;qlistwidget可以設定多選;

常用方法如下:

常用訊號:

例如:1

#qlistwidget 控制項使用

2from pyqt5.qtwidgets import

3from pyqt5.qtgui import

qicon,qpixmap,qstandarditem,qstandarditemmodel,qcursor

4from pyqt5.qtcore import

qstringlistmodel,qabstractlistmodel,qmodelindex,qsize,qt

5import

sys6

7class

windowclass(qwidget):89

def__init__(self,parent=none):

10 self.f=""

11 super(windowclass, self).__init__

(parent)

12 self.layout=qvboxlayout()

13 self.resize(400,300)

14 self.view=qlistwidget()15#

self.view.setviewmode(qlistwidget.listmode) #qlistwidget.iconmode

1617 self.view.setlinewidth(50)

18 self.view.additems(["

c","

a","

d","s"

])19

self.layout.addwidget(self.view)

20self.setlayout(self.layout)

2122 self.view.clicked.connect(self.check)#

單擊選中某乙個選項

23'''

''24

建立右鍵選單

25'''26#

必須將contextmenupolicy設定為qt.customcontextmenu27#

否則無法使用customcontextmenurequested訊號

28self.setcontextmenupolicy(qt.customcontextmenu)

293031#

建立qmenu

32 self.contextmenu =qmenu(self)

33 self.actiona = self.contextmenu.addaction(qicon("

images/0.png

"), u'

| 刪除')

3435

#顯示選單

36self.customcontextmenurequested.connect(self.showcontextmenu)

3738

#點選刪除menu

39self.contextmenu.triggered[qaction].connect(self.remove)

4041

defcheck(self,index):

42 r=index.row()

43 self.f=r;

44def

showcontextmenu(self):45#

如果有選中項,則顯示顯示選單

46 items=self.view.selectedindexes()

47if

items:

48self.contextmenu.show()

49 self.contextmenu.exec_(qcursor.pos()) #

在滑鼠位置顯示

50def

remove(self,qaction):

51print

(self.f)52#

self.view.takeitem(self.f)#刪除行(實際上是斷開了與list的聯絡)

5354

#注意:removeitemwidget(self, qlistwidgetitem) # 移除乙個item,無返回值55#

注意:takeitem(self, int) # 切斷乙個item與list的聯絡,返回該item

56 self.view.removeitemwidget(self.view.takeitem(self.f)) #

刪除57

PyQt5控制項的使用

qtablewidget qtabwidget qpixmap 圖表工具qchart 下拉選擇框qcombobox qtablewidget問題列表 空間不夠時單元格文字顯示不全 設定item背景色和字型顏色 場景 當空間不夠時,單元格內容會顯示不完全出現省略號 如下 方案 table object...

PYQT5常用控制項

一 利用qt設計師上面的旋鈕和顯示框來組合,用旋鈕操作,用顯示框顯示數字 旋鈕的訊號和槽選擇如圖,函式名稱隨便寫 需要注意的地方就是,寫曹函式的時候,帶乙個引數,名稱隨意,然後賦值給顯示器lcdnumber,如下 def valuec self,aa print aa self.lcdnumber....

PyQt5學習筆記05 高階介面控制項

和樹 qtablewidget繼承自qtableview,主要區別是qtableview可以使用自定義的資料模型來顯示內容 先要通過setmodel來繫結資料來源 而qtablewidget只能使用標準的資料型別,並且單元格資料是通過qtablewidgetitem物件來實現的。import sys...