Учебное пособие: Программирование графики и обработка событий
}//конец конструктора
publicvoidgetRez(){//метод, вычисляющий результат
doublex, //значение из первого текстового поля
Rez=0; //результат
//… вторая переменная – значение второго текстового поля
try{
x=newDouble(t1.getText()).doubleValue();//извлечение числа из первого текстового поля
//…
switch(ch.getSelectedIndex()){//какой пункт выпадающего списка выбран? (номер)
case 0: Rez = x + /*вторая переменная*/; break;
case 1: //…
//… остальные операторы
};
if (cb.getState()) Rez*=1.2;//если флажок нажат, умножаем результат на 1.2
//записываем текст в поле (метку) результата с помощью метода setText(String.valueOf(Rez));
} //окончаниеблока try
catch(Exception ex){
String s=new String(ex.getMessage());
//записываем текст в поле (метку) сообщения об ощибке с помощью метода setText("Ошибка "+s);
}// окончание блока catch
}// окончание метода getRez()
public void actionPerformed(ActionEvent e){getRez();}//реализацияметода actionPerformed
//(метод вызывается нажатием на кнопку b), см. выше
publicstaticvoidmain(String []a){Calcclc=newCalc();} //создаем только экземпляр класса Calc и все.
} //окончание класса Calc
Приложение 2. Иерархия классов AWT
На рис. 1 показана иерархия основных классов AWT. Основу ее составляют готовые компоненты: Button, Canvas, Checkbox, Choice, Container, Label, List, Scrollbar, TextArea, TextField, Menubar, Menu, PopupMenu, Menultem, CheckboxMenuItem. Если этого набора не хватает, то от класса Canvas можно породить собственные "тяжелые" компоненты, а от класса Component — "легкие" компоненты.
Основныеконтейнеры — этоклассы Panel, ScrollPane, Window, Frame, Dialog, FileDialog. Свои "тяжелые" контейнеры можно породить от класса Panel, а "легкие" — от класса Сontainer.
На рис. 1 также показаны и начальные классы иерархии библиотеки Swing — классы JComponent, JWindow, JFrame, JDialog, JApplet.