|
Spec-Zone .ru
спецификации, руководства, описания, API
|
Window classСледующие функции были представлены в Java SE 6.0:
Новая модель модальности была представлена, чтобы обработать блокирование модальности диалогового окна. Эта модель включает четыре типа модальности: немодальный, модальный приложением, модальный документом, и модальный инструментарием.
public Dialog( owner, title,
modalityType, gc)
modalityTypes параметр определяет, блокирует ли диалоговое окно ввод к другим окнам когда показано. Нулевое значение и неподдерживаемые типы модальности эквивалентны немодальному типу. getModalityType и setModalityType методы Dialog class позволяет Вам соответственно возвращать и устанавливать тип модальности для диалогового окна.
Любое высокоуровневое окно может быть отмечено так, оно не будет блокировано модальными диалоговыми окнами. Это свойство позволяет Вам установить модальный режим исключения. setModalExclusionType метод Window class определяет один из следующих модальных режимов исключения: APPLICATION_EXCLUDE, TOOLKIT_EXCLUDE, или NO_EXCLUDE.
См. разделе учебного руководства Swing для получения дополнительной информации о модальности.
Настольный API () API обеспечивается, чтобы позволить приложениям Java взаимодействовать с приложениями значения по умолчанию, связанными с определенными типами файла. Все, если действия представляются как a экземпляр перечисления:
Используйте метод Desktop class, чтобы проверить, поддерживается ли действие на текущей платформе.
См. разделом учебного руководства Swing для получения дополнительной информации об использовании Desktop class.
Есть новое решение, которое позволяет приложению выводить на экран экран-заставку прежде, чем виртуальная машина запустится, был представлен. Хотя class нельзя предъявить иск, чтобы создать экран-заставку, приложение Java может закрыть экран-заставку, изменить изображение экрана-заставки, получить позицию/размер изображения и краску в экране-заставке. Экземпляр SplashScreen class может быть получен, используя статический метод.
Чтобы запустить приложение с экраном-заставкой из командной строки используют следующую команду:
java -splash:<file name> <class name>
См. раздел Учебного руководства Swing для получения дополнительной информации об экране-заставке.
class предназначается, чтобы представить системный лоток для рабочего стола. К системному лотку можно получить доступ, вызывая getSystemTray() статический метод. Системный лоток может содержать один или более значков лотка, представленных Объекты 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 Ошибки .
См. раздел Учебного руководства Swing для получения дополнительной информации о значках лотка и системном лотке.
Два новых метода java.awt.Component class включает, чтобы получить базовую линию, измеренную из вершины компонента и обработать базовое изменение как размер компонентных изменений:
FlowLayout:
Два метода были представлены, чтобы управлять выравниванием вертикальных составляющих вдоль их базовой линии:
GridBagLayout:
Следующие ограничения были добавлены к class, чтобы улучшить кладет компоненты пикника с GridBagLayout class:
BASELINEBASELINE_LEADINGBASELINE_TRAILINGABOVE_BASELINEABOVE_BASELINE_LEADINGABOVE_BASELINE_TRAILINGBELOW_BASELINEBELOW_BASELINE_LEADINGBELOW_BASELINE_TRAILINGДополнительно class был представлен хранилищу, выравнивают, измеряют, и базовые параметры для каждого компонента в пределах контейнера, в то время как кладут компонентное использование пикника GridBagLayout.
Window classНовые методы были добавлены к Window class, чтобы обработать изображения, которые выводятся на экран как значок для окна. В то время как setIconImage(Image image) метод устанавливает единственное изображение, setIconImages(List<? extends Image> icons) метод поддерживает последовательность изображений различных размерностей, которые будут применены в зависимости от возможностей платформы.
В Java SE 6 a Window или Dialog объект может быть создан без родительского фрейма, owner параметр в конструкторах таких объектов равняется null.
Мышь перетащенные события были получены после перетащить установки чувствительности операционной системы, достигается. В предложенном решении игнорируется перетащить параметр расстояния операционной системы. Java перетаскивает события, будет ganerated в первом перемещении мыши.
Некоторые события, важные для обновления курсора, не были поставлены в то время как maximazing окно. Фиксация включает обработку событий x-пересечения в пределах XWindow.
Используя Alt+Tab, чтобы переместиться от окна Java до собственного окна приложения и назад к окну Java привел к фокусу, перемещаемому в первый пункт меню окна Java. Предложенная фиксация позволяет сохранять фокус на первоначально фокусируемом компоненте окна Java.
JTextField, JTextArea, и т.д.), даже в полях, которые были ранее отредактированы. Другие компоненты как поля комбинированного списка, таблицы, переключатели остаются доступными для редактирования. Код XWindow.java испытывает недостаток во много обработке щелчка. Так, когда пользователь, перетащенный мышь на экране на поле Linux, двойные щелчки, произошел когда пользователь ожидаемые единственные щелчки. Аналогично, единственные щелчки произошли когда пользователь, ожидаемый никакие щелчки вообще. Фиксация включает AWT_MULTICLICK_SMUDGE переменная, чтобы применить фактор пятна так, чтобы перемещение мыши небольшим количеством не вытерло переменные состояния мультищелчка.
Сам апплет не получал фокус, который очевидно пошел во встроенный фрейм. Эта несовместимость была вызвана переархитектурой фокуса, представленной в Java SE 1.4. Фиксация восстанавливает начальное правильное поведение.
Frame объект не осуществляется Window.setMinimumSize() метод был изменен, чтобы ограничить изменение размеров пользователя высокоуровневых окон ниже указанных размерностей. Ранее, минимальный набор размера для высокоуровневых окон был проигнорирован платформой, таким образом, это изменение может воздействовать на код, который использует minimumSize свойство высокоуровневых окон для его собственных потребностей.
Живое изменение размеров
У собственных приложений на Windows было свойство к динамически перерасположению и перекрашиванию во время изменения размеров. Этим свойством управляли посредством системных настольных настроек. Java отключает это свойство по умолчанию. В Java SE 6, который необходимое свойство, включает по умолчанию.
Если локаль была определена неправильно, собственный Входной Метод не обработал keysyms и передал их, как к AWT handleKeyEvent подпрограмма. В фиксации таблица преобразования добавляется и ключевое событие, обрабатывающее обычно оптимизированный в не Входные ситуации с Методом.
Вот список известных проблем, с которыми можно встретиться в выпуске 6.0.
JWindow компонент остается сверху всех других окон JWindow компонент не ложится спать сверху всех других окон, скрывающих другие окна позади этого на Солярисе и Linux. К обходному решению можно использовать неукрашенный фрейм.
В некоторых синтетических ситуациях (такой как повторено показ/избавление верхнего уровня) может отказать JVM.