在某些Mac应用程序中,当文档打开时,窗口的标题将成为文档名称,窗口将显示图标。右键单击标题会显示文件的路径。我想知道在Java中是否有办法做到这一点。
答案 0 :(得分:2)
您可以通过设置JFrame的rootPane的"Window.documentFile"
客户端属性来实现此目的。来自https://developer.apple.com/library/mac/technotes/tn2007/tn2196.html#WINDOW_DOCUMENTFILE:
<强> Window.documentFile 强>
输入:java.io.File
适用于:JRootPane
此属性将文档代理图标添加到窗口的标题栏。此图标是可以拖放到Finder或Dock中的文档的有效表示。按住Command键并单击标题将在弹出窗口中显示文档的完整路径。标题栏中的代理图标将具有Finder中的LaunchServices或“打开并保存”对话框中显示的文档图标。此属性可以在窗口的整个生命周期中随时更改。
示例代码:
public void open(File file) {
JFrame frame = new JFrame("My App");
frame.getRootPane().putClientProperty("Window.documentFile", file);
frame.getRootPane().putClientProperty("Window.documentModified", false);
// Load file
}