Новая модель модальности была представлена, чтобы обработать блокирование модальности диалогового окна. Эта модель включает четыре типа модальности: немодальный, модальный приложением, модальный документом, и модальный инструментарием.
modalityTypes параметр определяет, блокирует ли диалоговое окно ввод к другим окнам когда показано. Нулевое значение и неподдерживаемые типы модальности эквивалентны немодальному типу. getModalityType и setModalityType методы Dialog class позволяет Вам соответственно возвращать и устанавливать тип модальности для диалогового окна.
Любое высокоуровневое окно может быть отмечено так, оно не будет блокировано модальными диалоговыми окнами. Это свойство позволяет Вам установить модальный режим исключения. setModalExclusionType метод Window class определяет один из следующих модальных режимов исключения: APPLICATION_EXCLUDE, TOOLKIT_EXCLUDE, или NO_EXCLUDE.
Настольный API (java.awt.Desktop) API обеспечивается, чтобы позволить приложениям Java взаимодействовать с приложениями значения по умолчанию, связанными с определенными типами файла. Все, если действия представляются как a Desktop.Action экземпляр перечисления:
ОБЗОР — Представляет действие обзора, выполняемое браузером значения по умолчанию узла.
ПОЧТА — Представляет почтовое действие, выполняемое почтовым клиентом значения по умолчанию узла.
ОТКРЫТЫЙ — Представляет открытое действие, выполняемое приложением, связанным с открытием определенного типа файла.
РЕДАКТИРОВАНИЕ — Представляет действие редактирования, выполняемое приложением, связанным с редактированием определенного типа файла
ПЕЧАТЬ — Представляет действие печати, выполняемое приложением, связанным с печатью определенного типа файла.
Используйте isSupported метод Desktop class, чтобы проверить, поддерживается ли действие на текущей платформе.
Есть новое решение, которое позволяет приложению выводить на экран экран-заставку прежде, чем виртуальная машина запустится, был представлен. Хотя SplashScreen class нельзя предъявить иск, чтобы создать экран-заставку, приложение Java может закрыть экран-заставку, изменить изображение экрана-заставки, получить позицию/размер изображения и краску в экране-заставке. Экземпляр SplashScreen class может быть получен, используя getSplashScreen() статический метод.
Чтобы запустить приложение с экраном-заставкой из командной строки используют следующую команду:
java -splash:<file name> <class name>
См., Как Создать раздел Экрана-заставки Учебного руководства Swing для получения дополнительной информации об экране-заставке.
SystemTray class предназначается, чтобы представить системный лоток для рабочего стола. К системному лотку можно получить доступ, вызывая getSystemTray() статический метод. Системный лоток может содержать один или более значков лотка, представленных TrayIcon Объекты class. Однако, TrayIcon Функциональность class не ограничивается созданием значка лотка. Это также включает текстовую подсказку, раскрывающееся меню, и сообщения воздушного шара:
TrayIcon trayIcon = new TrayIcon(createImage("icon.gif", "tray icon"));
trayIcon.displayMessage("Sun TrayIcon Demo",
"This is an info message", TrayIcon.MessageType.INFO);
trayIcon.setToolTip("Sun TrayIcon");
Отметьте: текущая реализация TrayIcon class оказывает ограниченную поддержку компонентов Swing. Предложение по обходному решению по этой проблеме описывается в Базе данных Ошибки, см. ID Ошибки 6285881.
См., Как Использовать раздел Системного лотка Учебного руководства Swing для получения дополнительной информации о значках лотка и системном лотке.
Два новых метода java.awt.Component class включает, чтобы получить базовую линию, измеренную из вершины компонента и обработать базовое изменение как размер компонентных изменений:
Следующие ограничения были добавлены к GridBagConstraints class, чтобы улучшить кладет компоненты пикника с GridBagLayout class:
BASELINE
BASELINE_LEADING
BASELINE_TRAILING
ABOVE_BASELINE
ABOVE_BASELINE_LEADING
ABOVE_BASELINE_TRAILING
BELOW_BASELINE
BELOW_BASELINE_LEADING
BELOW_BASELINE_TRAILING
Дополнительно GridBagLayoutInfo class был представлен хранилищу, выравнивают, измеряют, и базовые параметры для каждого компонента в пределах контейнера, в то время как кладут компонентное использование пикника GridBagLayout.
Новые методы были добавлены к Window class, чтобы обработать изображения, которые выводятся на экран как значок для окна. В то время как setIconImage(Image image) метод устанавливает единственное изображение, setIconImages(List<? extends Image> icons) метод поддерживает последовательность изображений различных размерностей, которые будут применены в зависимости от возможностей платформы.
В Java SE 6 a Window или Dialog объект может быть создан без родительского фрейма, owner параметр в конструкторах таких объектов равняется null.
6404008 Поставок событий от нажатия мыши зависят от, перетаскивают чувствительность:
Мышь перетащенные события были получены после перетащить установки чувствительности операционной системы, достигается. В предложенном решении игнорируется перетащить параметр расстояния операционной системы. Java перетаскивает события, будет ganerated в первом перемещении мыши.
6242833 курсор мыши не ведет себя должным образом после максимизации окна на Linux/JDS 3:
Некоторые события, важные для обновления курсора, не были поставлены в то время как maximazing окно. Фиксация включает обработку событий x-пересечения в пределах XWindow.
4841881: Переключение вкладок при использовании Alt+Tab на Windows L&F перемещает фокус в строку меню приложения
Используя Alt+Tab, чтобы переместиться от окна Java до собственного окна приложения и назад к окну Java привел к фокусу, перемещаемому в первый пункт меню окна Java. Предложенная фиксация позволяет сохранять фокус на первоначально фокусируемом компоненте окна Java.
6291992: Замораживаются все доступные для редактирования поля
Доступные для редактирования поля стали неспособными быть отредактированными или получить фокус (JTextField, JTextArea, и т.д.), даже в полях, которые были ранее отредактированы. Другие компоненты как поля комбинированного списка, таблицы, переключатели остаются доступными для редактирования.
Код XWindow.java испытывает недостаток во много обработке щелчка. Так, когда пользователь, перетащенный мышь на экране на поле Linux, двойные щелчки, произошел когда пользователь ожидаемые единственные щелчки. Аналогично, единственные щелчки произошли когда пользователь, ожидаемый никакие щелчки вообще. Фиксация включает AWT_MULTICLICK_SMUDGE переменная, чтобы применить фактор пятна так, чтобы перемещение мыши небольшим количеством не вытерло переменные состояния мультищелчка.
Сам апплет не получал фокус, который очевидно пошел во встроенный фрейм. Эта несовместимость была вызвана переархитектурой фокуса, представленной в Java SE 1.4. Фиксация восстанавливает начальное правильное поведение.
4320050: Минимальный размер для a Frame объект не осуществляется
Window.setMinimumSize() метод был изменен, чтобы ограничить изменение размеров пользователя высокоуровневых окон ниже указанных размерностей. Ранее, минимальный набор размера для высокоуровневых окон был проигнорирован платформой, таким образом, это изменение может воздействовать на код, который использует minimumSize свойство высокоуровневых окон для его собственных потребностей.
У собственных приложений на Windows было свойство к динамически перерасположению и перекрашиванию во время изменения размеров. Этим свойством управляли посредством системных настольных настроек. Java отключает это свойство по умолчанию. В Java SE 6, который необходимое свойство, включает по умолчанию.
Если локаль была определена неправильно, собственный Входной Метод не обработал keysyms и передал их, как к AWT handleKeyEvent подпрограмма. В фиксации таблица преобразования добавляется и ключевое событие, обрабатывающее обычно оптимизированный в не Входные ситуации с Методом.
Вот список известных проблем, с которыми можно встретиться в выпуске 6.0.
5070056:JWindow компонент остается сверху всех других окон
JWindow компонент не ложится спать сверху всех других окон, скрывающих другие окна позади этого на Солярисе и Linux. К обходному решению можно использовать неукрашенный фрейм.