| |
;
// Выбираем в контекст отображения желтый цвет
g.setColor(Color.yellow);
// Закрашиваем внутреннюю область окна аплета
g.fillRect(0, 0,
dimAppWndDimension.width - 1,
dimAppWndDimension.height - 1);
// Выбираем в контекст отображения черный цвет
g.setColor(Color.black);
// Рисуем рамку вокруг окна аплета
g.drawRect(0, 0,
dimAppWndDimension.width - 1,
dimAppWndDimension.height - 1);
}
// -------------------------------------------------------
// start
// Метод вызывается при первом отображении окна аплета
// -------------------------------------------------------
public void start()
{
if (m_Scroller == null)
{
m_Scroller = new Thread(this);
m_Scroller.start();
}
}
// -------------------------------------------------------
// stop
// Метод вызывается, когда окно аплета исчезает с экрана
// -------------------------------------------------------
public void stop()
{
if (m_Scroller != null)
{
m_Scroller.stop();
m_Scroller = null;
}
}
// -------------------------------------------------------
// run
// Метод, который работает в рамках отдельной задачи
// Он выполняет динамическую свертку строк текста
// -------------------------------------------------------
public void run()
{
// Счетчик сдвинутых строк
int ShiftsCounter = 0;
// Размер сдвига по вертикали
int yShift;
// Высота символов текста
int yChar;
// Номер текущей рисуемой строки
int CurrentStr = 0;
// Массив сдвигаемых строк
String s[] = new String[6];
// Инициализация массива строк
s[0] = m_String1;
s[1] = m_String2;
s[2] = m_String3;
s[3] = m_String4;
s[4] = m_String5;
s[5] = m_String6;
// Получаем контекст отображения
Graphics g = getGraphics();
Dimension dimAppWndDimension = size();
// Определяем метрики текущего шрифта
FontMetrics fm = g.getFontMetrics();
// Сохраняем полную высоту символов шрифта
yChar = fm.getHeight();
// Бесконечный цикл сдвига строк
while (true)
{
try
{
// Увеличиваем содержимое счетчика сдвигов
ShiftsCounter++;
// Если
|
|