Java графический интерфейсы пользователя Swing на Mac OS X

При использовании LESS это работает:

@navbar-height: 150px;
@navbar-brand-vpadding: 10px;

.navbar-brand img {
  height: @navbar-height - @navbar-brand-vpadding * 2;
  position: absolute;
  top: @navbar-brand-vpadding;
}
9
задан Quinn Taylor 7 July 2009 в 03:35
поделиться

5 ответов

Swing не даст вам идеальной совместимости с ОС хоста. Sun просто не может выделить для этого значительные ресурсы. У меня сложилось впечатление, что Swing стал намного лучше, но по-прежнему будет выглядеть неуместно по умолчанию.

Минимум, необходимый для того, чтобы даже надеяться пройти как приложение для Mac:

  • упакуйте свой .jar в .app
  • установить для L&F значение по умолчанию
  • установить для свойства apple.laf.useScreenMenuBar значение true
    • должен сделать это до того, как какой-либо код пользовательского интерфейса

Взаимодействие с док-станцией будет отсутствовать в стандартной Java. Вам придется использовать мост Apple Cocoa-Java, который больше не поддерживается. Я понятия не имею, насколько управляема JNI в OS X, которая является единственной реальной альтернативой.

Производительность не должна быть проблемой. Drag & Drop, вероятно, так же опасен для OS X, как и везде.

В принципе, если вы явно ориентируетесь на OS X, вам лучше всего использовать Objective-C. Совсем не невозможно создать приложение на OS X с использованием Java и Swing, но нужно проделать большую работу, чтобы оно выглядело «родным».

8
ответ дан 4 December 2019 в 11:43
поделиться

As Kevin and John said you should try Objective-C, Cocoa and XCode if you are only targeting Mac users. The developer tools for Mac is freely available.

If you want to (or have to) use Java and Swing you can use some libraries to create a GUI that looks well on Macs:

For deploying your application you should read the JarBundler docs.

However, in this case interaction with dock and native applications is very limited.

Some other good links are:

6
ответ дан 4 December 2019 в 11:43
поделиться

Swing - хороший способ пойти, или вы можете пойти SWT, или ОБА!

Но в любом случае используйте их поверх платформы RCP. (либо с Eclipse, либо с Netbeans).

Взгляните на это: http://www.adam-bien.com/roller/abien/entry/eclipse_rcp_vs_netbeans_rcp

marco

0
ответ дан 4 December 2019 в 11:43
поделиться

@Kevin ++

Вероятно, лучше использовать Cocoa

  • Если вы хотите, чтобы он выглядел точно так же, как нативные приложения
  • Если вы ориентируетесь только на Mac

Если вы собираетесь распространять свои приложения для Windows, Linux и т. д. Swing - достойный выбор. Так лучше, но, как и в любом наборе инструментов, есть проблемы. Вы никогда не получите по-настоящему естественный вид с ним, то же самое касается аналогичных наборов инструментов пользовательского интерфейса, которые утверждают, что "

4
ответ дан 4 December 2019 в 11:43
поделиться

Macify может помочь.

0
ответ дан 4 December 2019 в 11:43
поделиться
Другие вопросы по тегам:

Похожие вопросы: