我正在做一个测试用例编辑器。该编辑器包含USART发送和接收数据包格式。编辑器是一个表格视图。
发送和接收数据包的长度为八个字节,例如:
0x01 0x02 0x03 ... 0x08
在我的第五和第六栏中。现在,我希望此列中的单元格为只读,但是当我双击这些列中的任何单元格时,将显示一个弹出窗口小部件。该小部件在文本编辑中将包含八个框,用户可以在其中输入数据包格式(即八个字节长)的数据。我可以轻松地将这些数据从弹出窗口小部件复制回后端中的只读单元格。
这将取消用户的所有策略,例如每个字节之间是否应该有一个空格。因此,这将消除潜在的人为错误。
1:是否存在用于双击表视图单元格的事件处理程序?
2:我可以为同一列的每个单元格使用一个通用的双击处理程序吗?
3:如何使特定列的单元格在表视图中只读,同时保留我可以在最后(即返回)更改其值的事实?
1:是否存在用于双击表视图单元格的事件处理程序。
注意,您应该使用信号而不是事件:
void doubleClicked(const QModelIndex & index)
2:我可以为同一列的每个单元格使用一个通用的双击处理程序吗?
是的,您可以处理每个信号。
3:如何使特定列的单元格在表视图中只读,同时保留我可以在最后(即返回)更改其值的事实。
这是您需要根据自己的意愿为模型索引设置的标志(即,只读或读写):
Qt::ItemIsEditable 2 It can be edited.
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句