C++ QTableView并双击单元格

C++ QTableView并双击单元格,c++,qt,qtableview,qtgui,C++,Qt,Qtableview,Qtgui,我正在开发一个测试用例编辑器。此编辑器包含USART发送和接收数据包格式。编辑器是一个表视图 发送和接收数据包的长度为8字节,例如: 0x01 0x02 0x03 ... 0x08 它在我的第五和第六栏。现在,我希望此列中的单元格是只读的,但是当我双击这些列中的任何单元格时,会显示一个弹出窗口小部件。此小部件将在文本编辑中包含八个框,用户可以在其中输入数据包格式(即八字节长)数据。我可以轻松地将这些数据从弹出窗口小部件复制回后端的只读单元 这将删除用户的所有策略,比如每个字节之间是否应该有一个

我正在开发一个测试用例编辑器。此编辑器包含USART发送和接收数据包格式。编辑器是一个表视图

发送和接收数据包的长度为8字节,例如:

0x01 0x02 0x03 ... 0x08
它在我的第五和第六栏。现在,我希望此列中的单元格是只读的,但是当我双击这些列中的任何单元格时,会显示一个弹出窗口小部件。此小部件将在文本编辑中包含八个框,用户可以在其中输入数据包格式(即八字节长)数据。我可以轻松地将这些数据从弹出窗口小部件复制回后端的只读单元

这将删除用户的所有策略,比如每个字节之间是否应该有一个空格。因此,这将消除潜在的人为错误

1:是否有双击表视图单元格的事件处理程序

2:我可以为同一列的每个单元格使用一个通用的双击处理程序吗

3:如何在表视图中使特定列的单元格只读,同时保留可以在末尾(即返回)更改其值的事实

1:是否有用于双击表的单元格的事件处理程序 视图

注意,应使用与事件相反的信号:

void双击(常量QModelIndex和索引)

2:我可以为同一单元格的每个单元格使用一个通用的双击处理程序吗 专栏

是的,您可以处理上述信号

3:如何使表中特定列的单元格只读 查看,同时保留我可以随时更改其值的事实 结束(即返回)

这是您需要根据自己的意愿为模型索引设置的标志(即只读或读写):

Qt::ItemIsEditable 2它可以编辑。