Я хочу, чтобы мое приложение интегрировало Mac OS X лучше. Я считал Интеграцию Mac OS X для Java, и я узнал, что должен импортировать com.apple.eawt.*
и напишите некоторый дополнительный код. Но, если я делаю это, мое приложение не собирается работать над Windows из-за отсутствующей ссылки. Я мог сделать это с командой препроцессора, если я пишу в C, но это - Java. Как я могу сделать это, не разделяя файл кода на 2 ответвления?
Я использовал отражение, чтобы увидеть, был ли там класс com.apple.whatever, и если это так, я это вызвало.
работал очень хорошо, и не создает нарушение импорта.
Ранее я ранее заблокировал эти страницы, которые имеют хорошие советы по настройку качающихся приложений для OS X.
Вот несколько вещь, которую вы можете добавить в начале вашей функции «главной», которая будет иметь ваше приложение «Swing», выглядит более родным на MacOSX (работает с 10,6 тоже)
System.setProperty("apple.laf.useScreenMenuBar", "true");
System.setProperty("apple.laf.useScreenMenuBar", "true");
System.setProperty("com.apple.mrj.application.apple.menu.about.name", "Your app name");
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
}
catch (ClassNotFoundException ex) {}
catch (InstantiationException ex) {}
catch (IllegalAccessException ex) {}
catch (UnsupportedLookAndFeelException ex) {}
это будет иметь бар меню перейти в меню Mac MENU. Он установит ваше имя приложения в строке меню и установит ваше приложение и ощутить Mac OSX L & F.
Это не идеально, но это быстрое начало :)
Вы сможете взглянуть на свойства системы , связанные с ОС и выполняют только код, когда вы видите Mac OS X.