如何在Qt Creator中编辑QtWebKit的右键上下文菜单?

3
好的,这是我的困境。 我正在使用Qt Creator制作一个简单的应用程序,并使用Webkit。 我认为Qt Creator会有一种易于使用信号和槽编辑器来编辑右键上下文菜单的方式,但事实证明并非如此。 我知道 webkit 有与上下文菜单相关的类,但我不知道如何通过 Qt Creator 访问它们。
我需要编辑上下文菜单中“在新窗口中打开链接”的部分,以便在跟随链接时在新窗口中打开我的应用程序,但正如我之前所说,我无法想到一种在不编译修改后的QtWebKit源代码的情况下进行编辑的方法,这将很麻烦。
如果您有任何答案,请不吝赐教。如果有任何区别,请注意,我主要是C# / .NET开发人员,我刚开始使用Qt和C ++。
2个回答

2
QWidget::contextMenuEvent(QContextMenuEvent *event)是一个“虚拟保护”函数。您可以继承QWebView,然后覆盖“contextMenuEvent”。

谢谢,我现在明白了。 - JC Leyba

1
如果您只需要处理“在新窗口中打开”操作,我建议重新实现虚拟受保护的QWebView :: createWindow。从头开始重新实现contextMenuEvent可能会很复杂,而不使用createStandardContextMenu,则会将“在新窗口中打开”指向createWindow。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接