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

Принципы построения графического интерфейса

В листинге 3.3 приведена полная программа этого вывода, а рис. 8.1 демонстрирует окно.

Иллюстрированный самоучитель по Java › Принципы построения графического интерфейса
Рис. 8.1. Окно программы-приветствия

Листинг 8.3. Графическая программа с приветствием.

import java.awt.*;
import java.awt.event.*;
class HelloWorldFrame extends Frame{
HelloWorldFrame(String s){
super(s);
}
public void paint(Graphics g){
g.setFont(new Font("Serif", Font.ITALIC | Font.BOLD, 30));
g.drawstring("Hello, XXI century World!", 20, 100);
}
public static void main(String[] args){
Frame f = new HelloWorldFrame("Здравствуй, мир XXI века!");
f.setSize(400, 150);
f.setvisible(true);
f.addWindowListener(new WindowAdapter(){
public void windowciosing(WindowEvent ev)(
System.exit(0);
}
});
}
}

Для вывода текста мы переопределяем метод paint () класса component. Класс Frame наследует этот метод с пустой реализацией.

Метод paint () получает в качестве аргумента экземпляр g класса Graphics, умеющего, в частности, выводить текст методом drawstring (). В этом методе кроме текста мы указываем положение начала строки в окне – 20 пикселов от левого края и 100 пикселов сверху. Эта точка – левая нижняя точка первой буквы текста н.

Кроме того, мы установили новый шрифт "Serif" большего размера – 30 пунктов, полужирный, курсив. Всякий шрифт – объект класса Font, а задается он методом setFont () класса Graphics.

Работу со шрифтами мы рассмотрим в следующей главе.

В листинге 8.3, для разнообразия, мы вынесли вызовы методов установки размеров окна, вывода его на экран и завершения программы в метод main ().

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

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