如何显示Windows资源管理器上下文(右键单击)菜单?

Ale*_*lex 4 c++ windows windows-explorer

我想显示Windows资源管理器上下文菜单.

我不想将我的应用程序添加到它,我只是想显示它.

我需要的一个很好的实现例子是Total Commander.

如果按住鼠标右键,TC将显示上下文菜单,这与Windows资源管理器中的完全相同.

我正在使用C++/Qt,但语言并不重要.

Ben*_*igt 9

我找到了几个可以帮助你的样品.你不可能单独使用Qt,因为shell上下文菜单是高度特定于操作系统的; 可能还需要一些Win32调用.

Raymond Chen博客系列"如何举办IContextMenu"

还有一些非C++样本:

以及相关的SO问题:


pau*_*sm4 -2

http://www.ffuts.org/blog/right-click-context-menus-with-qt/

\n\n
\n

在 Qt 中,右键单击弹出上下文菜单非常简单。有几点需要注意\xe2\x80\xa6

\n
\n\n
 // myWidget is any QWidget-derived class\n myWidget->setContextMenuPolicy(Qt::CustomContextMenu);\n connect(myWidget, SIGNAL(customContextMenuRequested(const QPoint&)),\n     this, SLOT(ShowContextMenu(const QPoint&)));\n
Run Code Online (Sandbox Code Playgroud)\n\n

另一方面,如果您正在寻找“Windows 资源管理器集成”或“Windows Shell 集成”之类的东西,这里有一个很好的(尽管不是 QT 特定的)示例:

\n\n

http://www.codeproject.com/Articles/15171/Simple-shell-context-menu

\n\n

关键是实现这两个 Windows shell 接口:

\n\n
    \n
  • 上下文菜单

  • \n
  • IShellExtInt

  • \n
\n