Иллюстрированный самоучитель по Java

Контейнер Window. События.

Контейнер window – это пустое окно, без внутренних элементов: рамки, строки заголовка, строки меню, полос прокрутки. Это просто прямоугольная область на экране. Окно типа window самостоятельно, не содержится ни в каком контейнере, его не надо заносить в контейнер методом add(). Однако оно не связано с оконным менеджером графической системы. Следовательно, нельзя изменить его размеры, переместить в другое место экрана. Поэтому оно может быть создано только каким-нибудь уже существующим окном, владельцем (owner) или родителем (parent) окна window. Когда окно-владелец убирается с экрана, вместе с ним убирается и порожденное окно. Владелец окна указывается В конструкторе:

  • window (Frame f) – создает окно, владелец которого – фрейм f;
  • window (window owner) – создает окно, владелец которого– уже имеющееся окно или подкласс класса window.

Созданное конструктором окно не выводится на экран автоматически. Его следует отобразить методом show (). Убрать окно с экрана можно методом hide (), а проверить, видно ли окно на экране – логическим методом isShowing().

Окно типа window возможно использовать для создания всплывающих окон предупреждения, сообщения, подсказки. Для создания диалоговых окон есть подкласс Dialog, всплывающих меню – класс popupMenu (см. главу 13).

Видимое на экране окно выводится на передний план методом toFront() или, наоборот, помещается на задний план методом toBack().

Уничтожить окно, освободив занимаемые им ресурсы, можно методом dispose().

Менеджер размещения компонентов в окне по умолчанию – BorderLayout. Окно создает свой экземпляр класса Toolkit, который возможно получить методом getToolkit().

События

Кроме событий класса Component: ComponentEvent, FocusEvent, KeyEvent, MouseEvent, при изменении размеров окна, его перемещении или удалении с экрана, а также показа на экране происходит событие windowEvent.

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.