Электронная библиотека книг Александра Фролова и Григория Фролова.
Shop2You.ru Создайте свой интернет-магазин
Библиотека
Братьев
Фроловых

Microsoft Visual J++. Создание приложений и аплетов на языке Java. Часть 1

© Александр Фролов, Григорий Фролов
Том 30, М.: Диалог-МИФИ, 1997, 288 стр.

[Назад] [Содеожание] [Дальше]

Создание диалоговых панелей

Диалоговые панели создаются на базе класса Dialog, краткое описание которого приведено ниже:


public class java.awt.Dialog
  extends java.awt.Window
{
  // -----------------------------------------------------
  // Конструкторы
  // -----------------------------------------------------

  // Создание диалоговой панели без заголовка
  public Dialog(Frame parent, boolean modal);

  // Создание диалоговой панели с заголовком
  public Dialog(Frame parent, String title, boolean  modal);

  // -----------------------------------------------------
  // Методы
  // -----------------------------------------------------

  // Вызов метода createDialog
  public void addNotify();

  // Получение строки заголовка диалоговой панели
  public String getTitle();

  // Определение, является ли диалоговая панель модальной
  public boolean isModal();

  // Определение возможности изменения размеров окна
  // диалоговой панели
  public boolean isResizable();

  // Получение строки параметров
  protected String paramString();

  // Включение или выключение возможности изменения
  // размеров окна диалоговой панели
  public void setResizable(boolean resizable);

  // Установка заголовка диалоговой панели
  public void setTitle(String title);
}

Для того чтобы создать свою диалоговую панель, вы должны определить новый класс, унаследовав его от класса Dialog, как это показано ниже:


class MessageBox extends Dialog
{
  . . .
  public MessageBox(String sMsg, 
    Frame  parent, String  sTitle, boolean  modal)
  {
   super(parent, sTitle, modal);
   . . .
   resize(200, 100);
   . . .
  }
}

В этом классе нужно определить конструктор, который вызывает конструктор базового метода класса Dialog и определяет размеры окна диалоговой панели. Кроме того, в конструкторе вы должны создать все необходимые компоненты для размещения внутри диалоговой панели (кнопки, списки, текстовые поля, переключатели и так далее), а также выполнить размещение этих компонент, установив нужный режим размещения.

Для окон класса Dialog устанавливается режим размещения BorderLayout. Если нужен другой режим размещения, необходимо установить его явным образом методом setLayout.

Для отображения окна диалоговой панели необходимо вызвать метод show. Чтобы спрятать диалоговой окно, применяйте метод hide. Метод dispose удаляет окно диалоговой панели окончательно и освобождает все связанные с ним ресурсы.

Когда пользователь пытается уничтожить окно диалоговой панели при помощи органов управления, расположенных в заголовке такого окна, возникает событие Event.WINDOW_DESTROY. Вы должны обработать его, обеспечив удаление окна диалоговой панели вызовом метода dispose, если, конечно, это соответствует логике работы вашей панели.

[Назад] [Содеожание] [Дальше]