如何把qtablewidget 第一列设置为不可编辑,第二列设置成可编辑

2025-05-08 07:37:58
推荐回答(1个)
回答1:

1 在编程中,若是想设置QTableWidget为不可编辑,则使用如下代码即可:

[cpp] view plaincopy
setEditTriggers(QAbstractItemView::NoEditTriggers);

2 由QTableWidget引申:

因为QTableWidget继承自QAbstractItemView,而QAbstractItemView方法setEditTriggers可以设置是否可以编辑,因此只要是继承自QAbstractItemView的其它类控件都可以设置为可否编辑,而且方法一致,如1所示。
QAbstractItemView的编辑触发事件如下:

Constant
Value
Description

QAbstractItemView::NoEditTriggers 0 No editing possible.
QAbstractItemView::CurrentChanged 1 Editing start whenever current item changes.
QAbstractItemView::DoubleClicked 2 Editing starts when an item is double clicked.
QAbstractItemView::SelectedClicked 4 Editing starts when clicking on an already selected item.
QAbstractItemView::EditKeyPressed 8 Editing starts when the platform edit key has been pressed over an item.
QAbstractItemView::AnyKeyPressed 16 Editing starts when any key is pressed over an item.
QAbstractItemView::AllEditTriggers 31 Editing starts for all above actions.