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

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

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

Библиотека :: Компьютеры и Программирование :: А.В. Фролов, Г.В. Фролов - Microsoft Visual J++
<<-[Весь Текст]
Страница: из 275
 <<-
 
/ Рисуем в цикле линии, координаты которых 
    // хранятся в массиве lines
    for (int i=0; i < lines.size(); i++) 
    {
      // Получаем координаты очередной линии
      Rectangle p = (Rectangle)lines.elementAt(i);

      // Рисуем линию
      g.drawLine( p.width, p.height, p.x, p.y);
    }
   
    // Сбрасываем режим рисования
    bDrawing = false;
  }

  // -------------------------------------------------------
  // mouseDown
  // Обработка щелчка кнопкой мыши
  // -------------------------------------------------------
  public boolean mouseDown(Event evt, int x, int y)
  {
    // Если количествао щелчков больше 1, считаем что
    // сделан двойной щелчок
    if(evt.clickCount > 1)
    {
      // Удаляем все строки из массива lines
      lines.removeAllElements();

      // Перерисовываем окно аплета
      repaint();

      return true;
    }

    // Сохраняем текущие координаты начала линии
    dmDown = new Dimension(x, y);

    // В начале процесса рисования линии устанавливаем
    // предыдущие координаты конца линии равными
    // координатам начала линии
    dmPrev = new Dimension(x, y);

    // Отключаем режим рисования
    bDrawing = false;
		return true;
  }

  // -------------------------------------------------------
  // mouseUp
  // Отпускание клавиши мыши
  // -------------------------------------------------------
  public boolean mouseUp(Event evt, int x, int y)
  {
    // Проверяем, включен ли режим рисования
    if(bDrawing)
    {
      // Если режим рисования включен, добавляем
      // новый элемент в массив lines
      
      // Сохраняем координаты конца линии
      dmUp = new Dimension(x, y);
      
      // Добавляем линию в массив
      lines.addElement(
        new Rectangle(dmDown.width, dmDown.height, x, y));
      
      // Перерисовываем окно аплета
      repaint();

      // Отключаем режим рисования
      bDrawing = false;
    }
    return true;
  }

  // -------------------------------------------------------
  // mouseDrag
  // Перемещение курсора мыши при нажатой клавише
  // -------------------------------------------------------
  public boolean mouseDrag(Event evt, int x, int y)
  {
    // Получаем контекст отображения для окна аплета
    Graphics g = getGraphics();

    // Включаем режим рисования
    bDrawing = true;

    // Закрашиваем предыдущую линию цветом фона
    // (то есть стираем ее)
    g.setColor(Color.yellow);

    g.drawLine(dmDown.width, dmDown.height, 
      dmPrev.width, dmPrev.height);

    // Рисуем новую линию черным цветом
    g.setColor(Color.black);
    g.drawLine(dmDown.width, dmDown.height, x, y);

    // Сохраняем координаты предыдущей линии,
    // чтобы стереть ее в следующий раз
    dmPrev = new Dimension(x, y);
    return true;
  }

  // -------------------------------------------------------
 
<<-[Весь Текст]
Страница: из 275
 <<-