【问题标题】:QTableView and double click on a cellQTableView 并双击一个单元格
【发布时间】:2013-09-27 18:46:28
【问题描述】:

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

发送和接收包长8个字节,例如:

0x01 0x02 0x03 ... 0x08

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

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

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

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

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

【问题讨论】:

    标签: c++ qt qtableview qtgui


    【解决方案1】:

    1:是否有双击表格单元格的事件处理程序 查看。

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

    void doubleClicked(const QModelIndex & index)

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

    是的,您可以为每个信号处理上述信号。

    3:如何使特定列的单元格在表格中只读 查看,同时保留我可以在 结束(即返回)。

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

    Qt::ItemIsEditable 2 It can be edited.

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-27
      • 2019-03-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多