|
bj)
{
// Ссылка на кнопку, от которой пришло сообщение
Button btn;
// Ссылка на элемент меню
MenuItem mnItem;
// Проверяем, что событие вызвано кнопкой, а не
// другим компонентом
if(evt.target instanceof Button)
{
// Получам ссылку на кнопку, вызвавшую событие
btn = (Button)evt.target;
// Если пользователь нажал кнопку OK, скрываем окно
if(evt.target.equals(btnOK))
{
hide();
}
// Если событие возникло от неизвестной кнопки,
// мы его не обрабатываем
else
return false;
return true;
}
// Обработка событий от меню
else if(evt.target instanceof MenuItem)
{
// Получам ссылку на элемент меню
mnItem = (MenuItem)evt.target;
// Если из меню File выбрана строка Exit,
// завершаем работу виртуальной машины Java
if(obj.equals("Exit"))
{
System.exit(0);
}
// Если из меню File выбрана строка New,
// отображаем название строки в диалоговой панели
else if(obj.equals("New"))
{
// Ссылка на диалоговую панель
MessageBox mbox;
// Создаем новую диалоговую панель
mbox = new MessageBox("Item New selected",
this, "Dialog from Frame", true);
// Отображаем диалоговую панель
mbox.show();
}
// Если из меню File выбрана строка Content,
// отображаем название строки в диалоговой панели
else if(obj.equals("Content"))
{
MessageBox mbox;
mbox = new MessageBox("Item Content selected",
this, "Dialog from Frame", true);
mbox.show();
}
// Если из меню File выбрана строка About,
// отображаем название строки в диалоговой панели
else if(obj.equals("About"))
{
MessageBox mbox;
mbox = new MessageBox("Item About selected",
this, "Dialog from Frame", true);
mbox.show();
}
else
return false;
return true;
}
return false;
}
}
// =========================================================
// Класс MessageBox
// На базе этого класса мы создаем диалоговые панели
// =========================================================
class MessageBox extends Dialog
{
// Поле для отображения текста сообщения
Label lbMsg;
// Кнопка для удаления диалоговой панели
Button btnOK;
// -------------------------------------------------------
// MessageBox
// Конструктор класса
// -------------------------------------------------------
public MessageBox(String sMsg,
Frame parent, String sTitle, boolean modal)
{
// Создаем диалогвоую панель, вызывая конструктор
// базового класса Dialog
super(parent, sTitle, modal);
// Устанавливаем размеры окна диалоговой панели
resize(200, 100);
// Устанавливаем режим размещения компонент GridLayout
setLayout(new GridLayout(2, 1));
// Создаем и добавляем поле для отображения сообщения
lbMsg = new Label(sMsg, Label.CENTER);
add(lbMsg);
// Создаем и добавляем кнопку для завершения работы
// диалоговой панели
btnOK = new Button("OK");
add(btnOK);
}
// -------------------------------------------------------
// handleEvent
// Обработка событий для диалоговой панели
// -------------------------------------------------------
public boolean handleEvent(Event evt)
{
// Если пользователь закрывает окно диалоговой панели,
// скрываем его с помощью метода hide
if(evt.id == Event.WINDOW_DESTROY)
{
dispose();
return true;
}
else
return super.handleEvent(evt);
}
// -------------------------------------------------------
// action
// Метод вызывается, когда пользователь выполняет
// действие над компонента
|
|