有没有办法使用Swing或AWT创建一个在Mac OS X上行为和看起来像检查器窗口的窗口?检查员窗口的一个示例是在按下Command
- Option
- I
时在Finder中打开的窗口。
我正在寻找一种方法来创建一个具有半高标题栏的窗口,该窗口始终保持在顶部并且不会得到焦点,例如被拖走时。
只有解决方案才能在Mac OS X上运行,因此允许使用特定于平台的库。但是如果有一种标准的方式,如果它有轻微的缺点,则是首选。
答案 0 :(得分:2)
Leopard添加了一些Swing客户端属性来改进OS X Java应用程序的UI - 这些在Technical Note TN2196中有所描述。您正在寻找的是Window.style:
此属性确定窗口是否具有实用程序样式标题栏。为了使这个窗口样式也浮动在所有其他窗口上,你必须另外调用setAlwaysOnTop(true)。具有“小”样式且设置为始终位于顶部的Windows将在您的应用程序不再位于最前端时自动隐藏。这与本机应用程序的行为类似。
在创建本机对等体之前,必须在窗口的JRootPane上设置此属性:
dialog.getRootPane().putClientProperty("Window.style", "small");
答案 1 :(得分:1)
ModalityTypes取决于平台,您必须查找JDialog#ModalityTypes