Pyqt5的tableWidget的单元格控件居中
以在tableWidget添加checkBox为例。
#实例化一个tableWidget1
tableWidget1 = QtWidgets.QTableWidget()
tableWidget1.setRowCount(6)
tableWidget1.setColumnCount(3)
tableWidget1.setHorizontalHeaderLabels(['图名','开始刻度','结束刻度'])
tableWidget1.horizontalHeader().setSectionResizeMode(QtWidgets.QHeaderView.Stretch)
tableWidget1.verticalHeader().setSectionResizeMode(QtWidgets.QHeaderView.Stretch)
#以列表存储CheckBox的名称
items = ["B1-Dir X","B1-Dir Y","B2-Dir X","B2-Dir Y","B3-Dir X","B3-Dir Y"]
for i in range(len(items)):
checkbox1 = QtWidgets.QCheckBox()
checkbox1.setText(items[i])
#正式开始控件居中:
#1.实例化一个新布局
hLayout = QtWidgets.QHBoxLayout()
#2.在布局里添加checkBox
hLayout.addWidget(checkbox1)
#3.在布局里居中放置checkbox1
hLayout.setAlignment(checkbox1, Qt.AlignCenter)
#4.实例化一个QWidget(控件)
widget = QtWidgets.QWidget()
#5.在QWidget放置布局
widget.setLayout(hLayout)
#6.在tableWidget1放置widget
tableWidget1.setCellWidget(i, 0, widget)
tableWidget1.verticalHeader().setVisible(False)
效果
红框里就是控件居中的效果

这篇博客介绍了如何在PyQt5的QTableWidget中实现单元格内的CheckBox控件居中显示。通过创建水平布局,设置控件的对齐方式,并将布局添加到QWidget中,最后将QWidget放入表格单元格,成功实现了控件的居中显示。
9491

被折叠的 条评论
为什么被折叠?



