PyQT5
教程链接
表格的用法
定位表格
text = '(1'
items = tableWidget.findItems(text,QtCore.Qt.MatchStartsWith)
items = tableWidget.findItems(text, QtCore.Qt.MatchExactly)
row = item.row()
tableWidget.verticalScrollBar().setSliderPosition(row)
单元格排序
self.button = QPushButton('排序')
self.button.clicked.connect(self.order)
self.orderType = Qt.DescendingOrder
def order(self):
if self.orderType == Qt.DescendingOrder:
self.orderType = Qt.AscendingOrder
else:
elf.orderType = Qt.DescendingOrder
self.tableWidget.sortItems(2,self.orderType)
单元格的对齐方式设置
newItem = QTableWidgetItem('单元格')
newItem.setTextAlignment(Qt.AlignRight | Qt.AlignBottom)
newItem.setTextAlignment(Qt.AlignCenter | Qt.AlignBottom)
合并单元格
setSpan(row,col,要合并的行数,要合并的列数)
newItem = QTableWidgetItem('第二列')
tableWidget.setItem(0,1,newItem)
tableWidget.setSpan(0,1,2,1)
设置单元格尺寸
tableWidget.setRowHeight(0, 80)
tableWidget.setColumnWidth(2, 120)
单元格图文混排
newItem = QTableWidgetItem(QIcon('../../../../../图片/Saved Pictures/1022933.jpg'),'背包')
tablewidget.setIconSize(QSize(300,200))
item = QTableWidgetItem()
item.setIcon(QIcon('../../../../../图片/Saved Pictures/1022933.jpg'))
表格展示上下文菜单
self.tableWidget.setContextMenuPolicy(Qt.CustomContextMenu)
self.tableWidget.customContextMenuRequested.connect(self.generateMenu)
def generateMenu(self,pos):
for i in self.tableWidget.selectionModel().selection().indexes():
rowNum = i.row()
if rowNum < 2:
menu = QMenu()
item1 = menu.addAction("菜单项1")
item2 = menu.addAction("菜单项2")
screenPos = self.tableWidget.mapToGlobal(pos)
action = menu.exec(screenPos)
if action == item1:
print('选择了第1个菜单项',self.tableWidget.item(rowNum,0).text(),
self.tableWidget.item(rowNum,1).text(),
self.tableWidget.item(rowNum, 2).text())
elif action == item2:
print('选择了第2个菜单项',self.tableWidget.item(rowNum,0).text(),
self.tableWidget.item(rowNum,1).text(),
self.tableWidget.item(rowNum, 2).text())
else:
return
树节点的用法
树节点添加响应
self.tree.clicked.connect(self