子窗口小部件中TableView的上下文菜单

时间:2014-06-05 11:37:01

标签: qt uitableview signals-slots

我在QT中使用C ++进行编程,并尝试使用动态选项卡创建一个UI,每个选项卡中都有表格。为了做到这一点,我在主窗口中有我的TabWidget,而另一个小部件只有tableView。当通过按钮单击动态地将选项卡添加到主窗口时,我创建了我的小部件的新对象并将其放入其中。

我还有另一个版本的应用程序,其中没有选项卡,只是主窗口中的tableView。

我无法在前一种情况下打开上下文菜单,而后者则完美适用。

我在两种情况下都使用信号“customContextMenuRequested”。当tableView在子窗口小部件中时,不理解我需要添加它以使其工作。

请帮忙吗? 谢谢!

1 个答案:

答案 0 :(得分:0)

您是否检查过任何涉及QAbstractScrollArea的内容,在这种情况下,它可能会按预期发出信号/插槽。

  

当widget的contextMenuPolicy为Qt :: CustomContextMenu时,会发出此信号,并且用户已在窗口小部件上请求了上下文菜单。位置pos是小部件接收的上下文菜单事件的位置。通常这是在小部件坐标中。此规则的例外是QAbstractScrollArea及其子类,它将上下文菜单事件映射到viewport()的坐标。