考虑一个简单的应用程序,它显示文件列表。我想在用户单击文件或文件夹时显示上下文菜单,就像在Windows资源管理器中右键单击一样(打开、重命名、编辑等)。我不想创建自己的上下文菜单,我想使用某种winapi显示Windows操作系统的上下文菜单。这只能在Windows机器上运行。是否可以使用Swing或SWT或任何其他UI控件实现?
这篇 MSDN 文章 解释了如何完成: Windows Explorer 调用文件夹对象的 IShellFolder::GetUIObjectOf 来请求一个对象的接口……当用户右键单击一个对象时,Windows Explorer 请求一个 IContextMenu 接口。 这里有一个完整的 C 代码示例 链接。
java.awt.Desktop
类可以提供使用默认应用程序打开/编辑的功能。如需重命名/复制/删除,请参阅java.io.File
类或Java 7中的新文件相关API。请注意,我猜这种能力在.NET中只需要2-3行代码。如果仅针对Windows,请考虑使用它。 - Andrew Thompson