Druzya.org
Возьмемся за руки, Друзья...
 
 
Наши Друзья

Александр Градский
Мемориальный сайт Дольфи. 
				  Светлой памяти детей,
				  погибших  1 июня 2001 года, 
				  а также всем жертвам теракта возле 
				 Тель-Авивского Дельфинариума посвящается...

 
liveinternet.ru: показано количество просмотров и посетителей

Библиотека :: Компьютеры и Программирование :: А.В. Фролов, Г.В. Фролов - Microsoft Visual J++
<<-[Весь Текст]
Страница: из 275
 <<-
 
3.
Листинг 3.3. Файл FontList\FontList.java
// =========================================================
// Просмотр списка доступных шрифтов
//
// (C) Фролов А.В, 1997
//
// E-mail: [email protected]
// WWW:    http://www.glasnet.ru/~frolov
//            или
//         http://www.dials.ccas.ru/frolov
// =========================================================

import java.applet.*;
import java.awt.*;

public class FontList extends Applet
{
  // -------------------------------------------------------
  // Поля класса
  // -------------------------------------------------------
  Toolkit toolkit;   // ссылка на Toolkit
  String  fntlist[]; // список шрифтов
  int yStart = 20;  // координата Y начала области вывода
  int yStep;        // шаг вывода строк с названиями шрифтов

  // -------------------------------------------------------
  // getAppletInfo
  // Метод, возвращающей строку информации об аплете
  // -------------------------------------------------------
  public String getAppletInfo()
  {
    return "Name: FontList\r\n" +
      "Author: Alexandr Frolov\r\n" +
      "E-mail: [email protected]" +
      "WWW:    http://www.glasnet.ru/~frolov" +
      "Created with Microsoft Visual J++ Version 1.0";
  }

  // -------------------------------------------------------
  // init
  // Вызывается во время инициализации аплета
  // -------------------------------------------------------
  public void init()
  {
    // Получаем ссылку на Toolkit
    toolkit = Toolkit.getDefaultToolkit();
    
    // Получаем список доступных шрифтов
    fntlist = toolkit.getFontList();
  }

  // -------------------------------------------------------
  // paint
  // Метод paint, выполняющий рисование в окне аплета
  // -------------------------------------------------------
  public void paint(Graphics g)
  {
    // Определяем метрики шрифта
    FontMetrics fm = g.getFontMetrics();

    // Устанавливаем шаг вывода строк по вертикали
    // равным полной высоте символов текущего шрифта
    yStep = fm.getHeight();

    // Устанавливаем новую высоту аплета исходя
    // из количества элементов в списке шрифтов
    resize(150, 20 + yStep * fntlist.length);

    // Определяем текущие размеры окна аплета
    Dimension dimAppWndDimension = size();
    
    // Выбираем в контекст отображения желтый цвет
    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);
    
    // Выводим в цикле список установленных шрифтов
    for(int i = 0; i < fntlist.length; i++)
    {
      g.drawString(fntlist[i], 10, yStart + yStep * i);
    }
  }
}
   В листинге 3.4 вы найдете исходный текст документа HTML, в который встроен 
наш аплет.
Листинг 3.4. Файл FontList\FontList.html


FontList




The source. Описание исходного текста Наиболее важными для нас являются методы init и paint. Метод init Процедура извлечения списка доступных шрифтов, использованная в нашем аплете, достаточно проста и выполняет
 
<<-[Весь Текст]
Страница: из 275
 <<-