最小化它以停靠时,设置一个类似于mac的图标

时间:2013-08-13 06:25:15

标签: java ios macos swing

enter image description here JFrame像其他mac应用程序一样最小化到扩展坞时,设置一个图标。 请帮忙..

4 个答案:

答案 0 :(得分:1)

例如什么Mikle was referring to

现在转到:Sizes of frame icons used in Swing

Icon Size Usage - showing 16x16 frame icon

Icon Size Usage - Alt+Tab

答案 1 :(得分:0)

Window类的方法setIconImages需要java.util.List<? extends Image>作为参数。您将必须传递具有不同大小的图像列表,以便操作系统可以针对每种特定情况从该列表中选择一个 - 是否为最小化图标,停靠/工具栏图标,窗口图标或任何其他系统特定UI的图标元件。

我通常会为自己的应用程序传递大量不同大小的图像: 16x16,24x24,32x32,48x48,64x64,128x128,256x256,512x512

大型工具栏或文件夹视图通常使用大型工具栏来显示与应用程序关联的文件的图标。通常还使用16x16图标作为窗口(框架/对话框)图标。其他图标可以在很多不同的情况下使用,具体取决于您拥有的操作系​​统(Windows,Mac OS e.t.c)。

答案 2 :(得分:0)

使用Mac OS提供的jar文件夹创建应用程序。使用jar bundler设置应用程序的图标,不要为你的jframe设置任何图标。

答案 3 :(得分:0)

你真的在谈论两件事。

  1. Dock中的应用程序图标,Finder等

    appbundler甚至只是简单地手工创建捆绑包就是解决方案 提及。

  2. 最小化到停靠栏时的应用程序图标

    当您最小化应用程序时,它将成为单独的dock入口,而不是 必然看起来像应用程序一样。

    窗口有setIconImages - 如果设置此方法,应用程序将变为 最小化的图标,看起来不是原生的。所以你应该检查一下你是不是 在调用该方法之前在OSX上运行并避免调用它。

    通过省略呼叫,您将获得最小化图标的默认行为 是窗口本身的缩影,这就是我们所看到的 其他应用程序。如果JRE能为我们处理这件事,那将是件好事 并在Mac OS X上运行时忽略图标。