Фрейм в java это

Фрейм в java это

Фрейм является высокоуровневым окном с title и границей. Размер фрейма включает любую область, определяемую для границы. Размерности пограничной области могут быть получены, используя getInsets метод. Так как пограничная область включается в полный размер фрейма, граница эффективно затеняет часть фрейма, ограничивая область, доступную для рендеринга и/или отображения субкомпонентов к прямоугольнику, у которого есть верхнее левое угловое расположение (insets.left , insets.top) , и имеет размер width — (insets.left + insets.right) height — (insets.top + insets.bottom) . Фрейм, реализованный как экземпляр JFrame class, окно, которое имеет художественные оформления, такие как граница, title, и поддерживает компоненты кнопки, которые закрывают или представляют окно в виде значка. Приложения с GUI обычно включают по крайней мере один фрейм. Апплеты иногда используют фреймы, также. Чтобы сделать окно, которое зависит от другого окна — исчезновение, когда другое окно представляется в виде значка, например — используют a dialog вместо frame. . Чтобы сделать окно, которое появляется в пределах другого окна, используйте внутреннюю рамку.

Создание и Показ Фреймов

Очень скучный фрейм

Вот изображение чрезвычайно простого окна, создаваемого FrameDemo демонстрационное приложение. Можно найти исходный код в FrameDemo.java . Можно работать, FrameDemo ( загрузите JDK 6 или позже ). Следующий FrameDemo кодируйте шоу, как создать и установить фрейм.

//1. Create the frame. JFrame frame = new JFrame("FrameDemo"); //2. Optional: What happens when the frame closes? frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //3. Create components and put them in the frame. //. create emptyLabel. frame.getContentPane().add(emptyLabel, BorderLayout.CENTER); //4. Size the frame. frame.pack(); //5. Show it. frame.setVisible(true);
    setDefaultLookAndFeelDecorated(true) requests that any subsequently created frames have window decorations provided by the look and feel, and not by the window system. For details, see Specifying Window Decorations. —>
  1. Первая строка кода создает фрейм, используя конструктора, который позволяет Вам устанавливать фрейм title. Другой часто используемый JFrame конструктор является конструктором без параметров.
  2. Затем код определяет то, что происходит, когда Ваш пользователь закрывает фрейм. EXIT_ON_CLOSE работа выходит из программы, когда Ваш пользователь закрывает фрейм. Это поведение является подходящим для этой программы, потому что у программы есть только один фрейм, и закрытие фрейма делает программу бесполезной. См. Отвечающие Закрывающие окно События для получения дополнительной информации.
  3. Следующий бит кода добавляет пустую метку к области контента фрейма. Если Вы не уже знакомы с областями контента и как добавить компоненты к ним, пожалуйста, считайте Добавляющие Компоненты в Область Контента. Для фреймов, у которых есть меню, Вы обычно добавляли бы строку меню к фрейму, здесь используя setJMenuBar метод. См., Как Использовать Меню для деталей.
  4. pack метод измеряет фрейм так, чтобы все его содержание было в или выше их привилегированных размеров. Альтернатива pack должен установить тип телосложения явно, вызывая setSize или setBounds (который также устанавливает расположение фрейма). Вообще, использование pack предпочтительно для вызова setSize , с тех пор pack листы, которые менеджер по расположению фрейма, отвечающий за тип телосложения, и менеджеров по расположению, способен корректировать к зависимостям от платформы и другим факторам, которые влияют на компонентный размер. Этот пример не устанавливает расположение фрейма, но легко сделать так использование любого setLocationRelativeTo или setLocation метод. Например, следующий код центрирует экранный фрейм:
frame.setLocationRelativeTo(null);

Определение Художественных оформлений Окна

По умолчанию художественные оформления окна предоставляются собственной оконной системой. Однако, можно запросить, чтобы стиль обеспечил художественные оформления для фрейма. Можно также определить, что у фрейма нет никаких художественных оформлений окна вообще, функция, которая может быть использована самостоятельно, или обеспечить Ваши собственные художественные оформления, или с полноэкранным монопольным режимом.

Читайте также:  Основные термины языка питон

Помимо определения, кто обеспечивает художественные оформления окна, можно также определить, какой значок используется, чтобы представить окно. Точно то, как этот значок используется, зависит от оконной системы или стили, который обеспечивает художественные оформления окна. Если оконная система поддерживает минимизацию, то значок используется, чтобы представить минимизированное окно. Большинство оконных систем или взгляда и чувств также выводят на экран значок в художественных оформлениях окна. Типичный размер значка 16×16, пиксели, но некоторые оконные системы используют другие размеры.

Следующие снимки показывают три фрейма, которые идентичны за исключением их художественных оформлений окна. Как можно сказать появлением кнопки в каждом фрейме, все три используют стиль Java. Первые художественные оформления использования, обеспеченные оконной системой, которые, оказывается, Microsoft Windows, но могли как легко быть любой другой системой, выполняющей платформу Java. Вторые и третьи художественные оформления окна использования обеспечили стилем Java. Третий фрейм использует художественные оформления окна стили Java, но имеет пользовательский значок.

Фрейм с художественными оформлениями, обеспеченными оконной системой Фрейм с художественными оформлениями, обеспеченными стилем Фрейм с пользовательским значком
Художественные оформления окна обеспечили стилем Художественные оформления окна обеспечили оконной системой Пользовательский значок; художественные оформления окна обеспечили стилем

Вот пример создания фрейма с пользовательским значком и с художественными оформлениями окна, обеспеченными стилем:

//Ask for window decorations provided by the look and feel. JFrame.setDefaultLookAndFeelDecorated(true); //Create the frame. JFrame frame = new JFrame("A window"); //Set the frame icon to an image loaded from a file. frame.setIconImage(new ImageIcon(imgURL).getImage());

Поскольку предыдущий фрагмент кода подразумевает, следует вызвать setDefaultLookAndFeelDecorated метод прежде, чем создать фрейм, на художественные оформления которого Вы хотите влиять. Значение Вы устанавливаете с setDefaultLookAndFeelDecorated используется для всех впоследствии создаваемых JFrame s. Можно переключиться назад на использование художественных оформлений оконной системы, вызывая JFrame.setDefaultLookAndFeelDecorated(false) . Некоторый взгляд и чувства не могли бы поддерживать художественные оформления окна; в этом случае художественные оформления оконной системы используются.

Читайте также:  Java method int array

Полный исходный код для приложения, которое создает фреймы, изображенные выше, находится в FrameDemo2.java . Помимо показа, как выбрать художественные оформления окна, FrameDemo2 также показывает, как отключить все художественные оформления окна и дает пример расположения окон. Это включает два метода, которые создают Image объекты, используемые в качестве значков — каждый загружается из файла, и другой красится с нуля.

Попробуйте это::

  1. Нажмите кнопку Launch, чтобы работать, Демонстрационный пример Фрейма, использующий Сеть Java™, Запускаются ( загрузите JDK 6 или позже ). Альтернативно, чтобы скомпилировать и выполнить пример самостоятельно, консультируйтесь, пример индексируют.
    Try this:
    1. Run FrameDemo2 ( download JDK 6 or later ). Or, to compile and run the example yourself, consult the example index. —>
    2. Переведите в рабочее состояние два окна, обоих со стилем, обеспеченным художественные оформления, но с различными значками.
      Стиль Java выводит на экран значки в своих художественных оформлениях окна. В зависимости от Вашей оконной системы значок может использоваться в другом месте, чтобы представить окно, особенно когда окно минимизируется.
    3. Переведите одно или более окон в рабочее состояние с художественными оформлениями оконной системы.
      См., обрабатывает ли Ваша оконная система эти значки по-другому.
    4. Переведите одно или более окон в рабочее состояние без художественных оформлений окна.
      Игра с различными типами окон, чтобы видеть, как художественные оформления окна, оконная система, и значки фрейма взаимодействуют.

    Отвечание на Закрывающие окно События

    По умолчанию, когда пользователь закрывает экранный фрейм, фрейм скрывается. Хотя невидимый, фрейм все еще существует, и программа может сделать его видимым снова. Если Вы хотите различное поведение, то Вы должны или зарегистрировать слушателя окна, который обрабатывает закрывающие окно события, или Вы должны определить значение по умолчанию близкое поведение, используя setDefaultCloseOperation метод. Можно даже сделать обоих.

    Параметр setDefaultCloseOperation должно быть одно из следующих значений, первые три из которых определяются в WindowConstants интерфейс (реализованный JFrame , JInternalPane , и JDialog ):

    DO_NOTHING_ON_CLOSE Ничего не делайте, когда пользователь запрашивает, чтобы окно закрылось. Вместо этого программа должна, вероятно, использовать слушателя окна, который выполняет некоторое другое действие в windowClosing метод. HIDE_ON_CLOSE (значение по умолчанию для JDialog и JFrame ) Скройте окно, когда пользователь закрывает его. Это удаляет окно из экрана, но листов это визуализуемый. DISPOSE_ON_CLOSE (значение по умолчанию для JInternalFrame ) Скройтесь и избавьтесь от окна, когда пользователь закрывает его. Это удаляет окно из экрана и освобождает любые ресурсы, используемые этим. EXIT_ON_CLOSE (определенный в JFrame class) Выйдите из приложения, используя System.exit(0) . Это рекомендуется для приложений только. Если использующийся в пределах апплета, a SecurityException может быть брошен.

    DISPOSE_ON_CLOSE может иметь результаты, подобные EXIT_ON_CLOSE если только одно окно является экранным. Более точно, когда от последнего визуализуемого окна в пределах виртуальной машины Java (VM) избавляются, VM может завершиться. См. , что AWT Распараллеливает Проблемы для деталей.

    Операция закрытия значения по умолчанию выполняется после того, как любые слушатели окна обрабатывают закрывающее окно событие. Так, например, предположите, что Вы определяете, что операция закрытия значения по умолчанию должна избавиться от фрейма. Вы также реализуете слушателя окна, который тестирует, является ли фрейм последним видимым и, если так, сохраняет некоторые данные и выходит из приложения. При этих условиях, когда пользователь закрывает фрейм, слушателя окна вызовут сначала. Если это не выйдет из приложения, то операция закрытия значения по умолчанию — избавление от фрейма — будет тогда выполняться.

    Для получения дополнительной информации об обработке закрывающих окно событий, см. , Как Записать Слушателям Окна. Помимо обработки закрывающих окно событий, слушатели окна могут также реагировать на другие изменения статуса окна, такие как iconification и активация.

    API Фрейма

    Следующие таблицы приводят обычно используемый JFrame конструкторы и методы. Другие методы, которые Вы могли бы хотеть вызвать, определяются java.awt.Frame , java.awt.Window , и java.awt.Component классы те, от который JFrame убывает.

    Поскольку каждый JFrame у объекта есть корневая область, у фреймов есть поддержка того, чтобы вставить ввод и нарисовать поведение перед дочерними элементами фрейма, размещая дочерние элементы в различные «уровни», и для строк меню Swing. Эти темы представляются в Использовании Высокоуровневых Контейнеров и объясняются подробно в том, Как Использовать Корневые Области.

    API для того, чтобы использовать фреймы попадает в эти категории:

    • Создание и Установка Фрейма
    • Установка Размера окна и Расположения
    • Методы, Связанные с Корневой Областью
    • DO_NOTHING_ON_CLOSE
    • HIDE_ON_CLOSE
    • DISPOSE_ON_CLOSE
    • EXIT_ON_CLOSE

    Примеры то Использование Фреймы

    Все автономные приложения в этом использовании следа JFrame . Следующая таблица приводит некоторых и говорит Вам, где каждый обсуждается.

    Пример Где Описано Примечания
    FrameDemo Объясненный Пример Выводит на экран основной фрейм с одним компонентом.
    FrameDemo2 Определение Художественных оформлений Окна Позволяет Вам создавать фреймы с различными художественными оформлениями окна.
    Framework Исследование в создании и уничтожении окон, в реализации строки меню, и в выходе из приложения.
    LayeredPaneDemo Как Использовать Многоуровневые Области Иллюстрирует, как использовать многоуровневую область (но не фрейм многоуровневая область).
    GlassPaneDemo Стеклянная Область Иллюстрирует использование области стекла фрейма.
    MenuDemo Как Использовать Меню Шоу, как поместить a JMenuBar в a JFrame .

    Ваше использование этой страницы и всего материала на страницах под «Учебным баннером» Java подвергается этим официальным уведомлениям.

    Авторское право © 1995, 2012 Oracle и/или его филиалы. Все права защищены.

    Предыдущая страница: Как Использовать Отформатированные Текстовые поля
    Следующая страница: Как Использовать Внутренние рамки

    Источник

Оцените статью