|
отображения строк
param = getParameter(PARAM_Font1);
if (param != null)
m_Font1 = param;
. . .
param = getParameter(PARAM_Font5);
if (param != null)
m_Font5 = param;
// Начертание шрифтов
param = getParameter(PARAM_Type1);
if (param != null)
m_Type1 = param;
. . .
param = getParameter(PARAM_Type3);
if (param != null)
m_Type3 = param;
}
Здесь все просто. Метод init по очереди получает значения параметров методом
getParameter, которому в качестве параметра передается имя параметра аплета.
Полученное значение сохраняется в рабочей переменной param и, если оно отлично
от значения null, сохраняется в соответствующем поле класса.
Метод paint
После закрашивания фона желтым цветом и рисования вокруг окна аплета черной
рамки метод paint анализирует значение параметра m_Type1 и выбирает в контекст
отображения шрифт для рисования первой строки:
if(m_Type1.equals("Bold"))
g.setFont(new Font(m_Font1, Font.BOLD, 25));
else if(m_Type1.equals("Italic"))
g.setFont(new Font(m_Font1, Font.ITALIC, 25));
else if(m_Type1.equals("Plain"))
g.setFont(new Font(m_Font1, Font.PLAIN, 25));
Для сравнения строк класса String мы используем метод equals, который
возвращает значение true при совпадении с заданной строкой и false в противном
случае.
Методу выбора шрифта setFont мы передаем объект класса Font, созданный
конструктором.
Конструктор получает в качетсве первого параметра содержимое поля класса
m_Font1, которое соответствует значению параметра аплета с именем Font1.
Значение второго параметра (стиль шрифта) выбирается исходя из значения
параметра аплета с именем m_Type1. Здесь мы указываем константы, определенные в
классе Font.
И, наконец, третий параметр конструктора класса Font задает размер символов
шрифта, равный 25 пикселам.
После выбора шрифта мы выполняем отступ от верхней границы окна и рисуем
первую строку в позиции (0, yCurrent):
yCurrent += yStart;
g.drawString(m_Str1, 10, yCurrent);
На следующем этапе метод paint получает метрику только что выбранного шритфа
и увеличивает текущую позицию yCurrent на величину полной высоты символов
шрифта, полученную с помощью метода getHeight:
FontMetrics fm = g.getFontMetrics();
yCurrent += fm.getHeight();
Далее эта же процедура повторяется для остальный четырех отображаемых в окне
аплета строк.
Экспериментируя с аплетом, попробуйте изменить параметры, передаваемые
аплету в документе HTML. Укажите, например, несуществующий шрифт и посмотрите,
какой шрифт будет выбран навигатором для отображения.
4 ОБРАБОТКА СОБЫТИЙ
От аплетов Java было бы немного толку, если бы они не умели обрабатывать
информацию, поступающую от мыши и клавиатуры. К счастью, такая обработка
предусмотрена и она выполняется достаточно просто.
Когда пользователь выполняет операции с мышью или клавиатурой в окне аплета,
возникают события, которые передаются соответств
|
|