PyQt5 QTableWidgetItem.setFlags()

 

查看 Qt 官方地址 https://doc.qt.io/qt-5/qt.html 得到如下说明

默认值是 63,即如下表达式的值(位运算),表示可选择、可编辑、可拖拽、可放入、可勾选、可交互

Qt.ItemIsSelectable | Qt.ItemIsEditable | Qt.ItemIsDragEnabled | Qt.ItemIsDropEnabled | Qt.ItemIsUserCheckable | Qt.ItemIsEnabled

 

分析得到如下表格

(1)二进制数从右往左数,第1位数用于声明控件是否可选择,1表示可选,0表示不可选

(2)第2位数用于声明控件是否可编辑

(3)第3位数用于声明控件是否可拖拽

(4)第4位数用于声明控件是否可放入

(5)第5位数用于声明控件是否可勾选

(6)第6位数用于声明控件是否可用,是否可交互,要启用前5个功能必须启用该项,好比总开关(重点

 

item = QtWidgets.QTableWidgetItem()
item.setCheckState(Qt.Checked)

# 只能编辑,其他都不行
item.setFlags(Qt.ItemIsEnabled | Qt.ItemIsEditable)

# 只是不能编辑,其他都行
item.setFlags(
    Qt.ItemIsEnabled | Qt.ItemIsUserCheckable | Qt.ItemIsSelectable | Qt.ItemIsDragEnabled | Qt.ItemIsDropEnabled)

# 或者另外一个写法
item.setFlags(Qt.ItemFlags(int("111101", 2)))

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章