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

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

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

Библиотека :: Компьютеры и Программирование :: А.В. Фролов, Г.В. Фролов - Сценарии JavaScript в активных страницах Web
<<-[Весь Текст]
Страница: из 116
 <<-
 
, width, height;
      int rColor, gColor, bColor;
      
      // Выбираем случайным образом размеры
      // и расположение рисуемого прямоугольника
      x = (int)(dimAppWndDimension.width * Math.random());
      y = (int)(dimAppWndDimension.height * Math.random());
      width = (int)(dimAppWndDimension.width * 
              Math.random()) / 2;
      height = (int)(dimAppWndDimension.height * 
              Math.random()) / 2;
      
      // Выбираем случайный цвет для рисования 
      // прямоугольника
      rColor = (int)(255 * Math.random());
      gColor = (int)(255 * Math.random());
      bColor = (int)(255 * Math.random());

      // Устанавливаем выбранный цвет в контексте 
      // отображения
      g.setColor(new Color(rColor, gColor, bColor));

      // Рисуем прямоугольник
      g.fillRect(x, y, width, height);

      // Выполняем задержку на 50 миллисекунд
      try
      {
        Thread.sleep(50);
      }
      catch (InterruptedException e)
      {
        stop();
      }
    }
  }

  // -------------------------------------------------------
  // mouseEnter
  // Метод вызывается, когда курсор мыши оказывается над
  // окном аплета
  // -------------------------------------------------------
  public boolean mouseEnter(Event evt, int x, int y)
  {
    if (m_Rectangles != null)
    {
      // Когда курсор мыши оказывается над поверхностью
      // окна аплета, временно приостанавливаем
      // задачу рисования прямоугольников
      m_Rectangles.suspend();
    }
    return true;
  }

  // -------------------------------------------------------
  // mouseExit
  // Метод вызывается, когда курсор мыши покидает
  // окно аплета
  // -------------------------------------------------------
  public boolean mouseExit(Event evt, int x, int y)
  {
    if (m_Rectangles != null)
    {
      // Когда курсор мыши покидает окно аплета,
      // возобновляем работу задачи рисования 
      // прямоугольников
      m_Rectangles.resume();
    }
    return true;
  }
}
  Доступ к полям аплета Java из сценария JavaScript
   В предыдущем примере сценарий JavaScript вызывал методы, определенные в 
аплете Java. В следующем примере сценарий будет обращаться к полю, 
определенному в главном классе аплета.
   Заметим, что сценарию JavaScript доступны только те поля и методы аплета, 
определенные как public.
   На рис. 6.2 показан внешний вид документа HTML, в котором расположен один 
аплет и форма с одним многострочным текстовым полем и одной кнопкой.

   Рис. 6.2. Сценарий JavaScript вызывает получает информацию от аплета
   В окне аплета, расположенном в верхней части документа, находится поле 
редактирования текста и кнопка с надписью “Получить строку”. Если набрать в 
поле редактирования любую текстовую строку и нажать эту кнопку, то введенная 
строка будет отображена в нижней части аплета после символа >. Такой аплет мы 
описали в 30 томе “Библиотеки системного программиста” в разделе “Приложение 
TxtField” пятой главы.
   Если нажать кнопку “Get applet info and text”, то сценарий JavaScript 
извлечет из аплета введенную текстовую строку (она хранится в поле с именем 
str), а также получит описание аплета, вызвав метод getAppletInfo, определенный 
в нашем аплете.
   Введенная строка и информация об аплете будет затем отображена сценарием в 
многострочном поле редактирования, как это показано на рис. 6.2.
   Таким образом, наш сценарий обращается к полю и методу, определенным в 
аплете.
   Исходный текст документа HTML вы найдете в листинге 6.3.
Листинг 6.3. Файл chapter6/TxtField/TxtField.html

  
    Get text
    
		
 
<<-[Весь Текст]
Страница: из 116
 <<-