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

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

Библиотека :: Компьютеры и Программирование :: А.В. Фролов, Г.В. Фролов - Microsoft Visual J++
<<-[Весь Текст]
Страница: из 275
 <<-
 
ваться содержимое
  // выходного потока
  byte[] bMemStream;

  // -------------------------------------------------------
  // getAppletInfo
  // Метод, возвращающей строку информации об аплете
  // -------------------------------------------------------
  public String getAppletInfo()
  {
    return "Name: MemStream\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
  // Метод init, получает управление при инициализации 
  // аплета
  // -------------------------------------------------------
  public void init()
  {
    // Инициализируем строку для записи в поток
    sOut = "Hello, Java!";

    try
    {
      // Создаем выходной поток в оперативной памяти
      ByteArrayOutputStream baStream = 
        new ByteArrayOutputStream(255);

      // Создаем буферизованный форматированный поток
      // на базе потока baStream 
      OutStream = new DataOutputStream(
        new BufferedOutputStream(baStream));

      // Записываем строку sOut в выходной поток
      OutStream.writeBytes(sOut);

      // Сбрасываем содержимое буфера
      OutStream.flush();

      // Копируем содержимое потока в массив bMemStream 
      bMemStream = baStream.toByteArray();

      // Закрываем выходной поток
      OutStream.close();
    }
    catch(Exception ioe)
    {
    }
  }

  // -------------------------------------------------------
  // paint
  // Метод paint, выполняющий рисование в окне аплета
  // -------------------------------------------------------
  public void paint(Graphics g)
  {
    // Определяем текущие размеры окна аплета
    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);

    try
    {
      // Создаем входной буферизованный поток данных
      InStream = new DataInputStream(
        new BufferedInputStream(
        new ByteArrayInputStream(bMemStream)));

      // Читаем одну строку из созданного входного потока
      // и отображаем ее
      g.drawString(InStream.readLine(), 10, 20);

      // Закрываем входной поток
      InStream.close();
    }
    catch(Exception ioe)
    {
    }
  }
}
   В листинге 2.4 вы найдете исходный текст документа HTML, созданный 
автоматически для нашего аплета системой Microsoft Visual J++.
Листинг 2.4. Файл MemStream\MemStream.html


MemStream




The source. Описание исходных текстов Мы рассмотрим только самые важные методы нашего аплета - init и paint. Метод init В начале своей работы метод init записывает в поле sOut текстовую строку, которая будет записана в выходной поток: String sOut; sOut = "Hello, Java!"; Далее метод init создает поток baStream класса ByteArrayOutputStream, устанавливая начальный размер выделенного для него массива равным 255 байт: ByteArrayOutputStream baStream = new ByteArrayOutputStream(255); Для выполнения форматированного вывода нам нужен поток класса DataOutputStream, который мы и создаем на базе потока baStream: OutStream = new DataOutputStream( new BufferedOutputStream(baStream)); Для записи строки в выходной поток мы воспользовались методом writeBytes: OutStream.writeBytes(sOut); Так как наш выходной поток б
 
<<-[Весь Текст]
Страница: из 275
 <<-