2013-09-27 88 views
1

我正在测试用例编辑器上工作。该编辑器包含USART发送和接收数据包格式。编辑器是一个表格视图。QTableView并双击一个单元格

发送和接收的分组是八个字节长,例如:

0x01 0x02 0x03 ... 0x08 

这是在我的第五和第六列。现在,我希望此列中的单元格是只读的,但是当我双击这些列中的任何单元格时,都会显示一个弹出窗口小部件。该小部件将在文本编辑中包含八个框,其中用户可以输入分组格式(即8个字节长)的数据。我可以很容易地将这些数据从弹出窗口中复制回到后端的只读单元格中。

这会从用户身上拿走所有的策略,比如每个字节之间是否应该有空格。从而,这将消除潜在的人为错误。

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

2:对于同一列的每个单元,我可以有一个共同的双击处理程序吗?

3:我怎样才能读取特定列的单元格仅在表视图,同时保留的事实,我可以在年底(即背面)改变自己的价值?

enter image description here

回答

5

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

注意,你应该使用的信号,而不是事件:

void doubleClicked(const QModelIndex & index)

2:我可以有相同的 列的每个小区的公共双击处理程序。

是的,你可以处理上述的信号。

3:我怎样才能使一个特定列的同时保留的事实,我可以在 端(即背面)改变其值只在表 视图读取的单元。

这是你需要根据你的愿望的模型系数设置标志(即只读或读写):

Qt::ItemIsEditable 2 It can be edited.

相关问题