Новые книги

Вы – фрилансер или внештатный сотрудник? Трудитесь в компании удаленно, сидя за своим компьютером дома, и хотите повысить эффективность и скорость работы? Тогда эта книга – для вас. Она рассказывает о наиболее популярных средствах для совместной работы. С ее помощью вы научитесь использовать общую базу данных компании, в которой работаете, не выходя из дому. Вы узнаете, как управлять документами по сети, как совместно работать над проектами, организовывать видеоконференции, звонить в офис с помощью компьютера, как удобно и быстро получать через Интернет заработанные деньги.

Основное внимание в книге уделено трем продуктам: Windows SharePoint Services 3.0, Microsoft Office SharePoint Server 2007 (MOSS) и Citrix. Кроме того, рассматриваются и альтернативные средства.
В этой книге представлена методика избавления от нежелательных привычек с помощью повторения коротких ключевых фраз, напоминающих вам о ваших целях и решениях. Короткие фразы из этой книги работают, потому что они побеждают автоматическую систему и помогают вам сознательно понимать то, что вы сейчас делаете, они также служат вам коротким напоминаем о то, что вы хотите сделать в данный момент. Вы начинаете с одной фразы, повторяете ее до тех пор, пока она не «въедается» в вас настолько, что повторения становятся уже не нужны, затем беретесь за следующее изречение. С помощью этой методики вы сможете отказаться от «автопилота» и внедрять в свою жизнь сознательные изменения.

На русском языке публикуется впервые.

События от мыши

События от мыши

Оглавление

События
Обработка событий
События от мыши
Аплет LineDraw
Исходный текст
Описание текста

В этом разделе мы рассмотрим события, которые возникают в результате того, что пользователь выполняет в окне аплета операции с мышью. Это такие операции, как нажатие и отпускание клавиши мыши, перемещение курсора мыши в окне аплета с нажатой или отпущенной клавишей, перемещение курсора мыши в окно аплета и удаление этого курсора из окна аплета.

Все перечисленные ниже методы должны вернуть значение true, если обработка события выполнена успешно и дальнейшая обработка не требуется. Если же методы вернут значение fasle, событие будет обработано методом из базового класса, то есть для него будет выполнена обработка, принятая по умолчанию.

Программисты, создававшие приложения для операционной системы Microsoft Windows, могут найти здесь аналогию с вызовом функции DefWindowProc, которая выполняет обработку сообщений, принятую по умолчанию.

Нажатие клавиши мыши

Переопределив метод mouseDown, вы сможете отслеживать нажатия клавиши мыши. Прототип этого метода приведен ниже:

public boolean mouseDown(Event evt, int x, int y);

Через параметр evt методу передается ссылка на объект Event, с помощью которой метод может получить полную информацию о событии.

Анализируя содержимое параметров x и y, приложение может определить координаты курсора на момент возникновения события.

Заметим, что для отслеживания двойного щелчка мыши не предусмотрено никакого отдельного метода. Однако анализируя содержимое поля clickCount переменной evt, вы можете определить кратность щелчка мыши:

if(evt.clickCount > 1)
  // Двойной щелчок
  showStatus("Mouse Double Click");
else
  // Одинарный щелчок
  showStatus("Mouse Down");

Отпускание клавиши мыши

При отпускании клавиши мыши управление получает метод mouseUp:

public boolean mouseUp(Event evt, int x, int y);

Анализируя параметры x и y, вы можете определить координаты точки, в которой пользователь отпустил клавишу мыши.

Перемещение курсора мыши

Когда пользователь перемещает курсор мыши над окном аплета, в процессе перемещения происходит вызов метода mouseMove:

public boolean mouseMove(Event evt, int x, int y);

Через переменные x и y передаются текущие координаты курсора мыши.

Выполнение операции Drag and Drop

Операция Drag and Drop выполняется следующим образом: пользователь нажимает клавишу мыши и, не отпуская ее, начинает перемещать курсор мыши. При этом происходит вызов метода mouseDrag:

public boolean mouseDrag(Event evt, int x, int y);

Через переменные x и y передаются текущие координаты курсора мыши. Метод mouseDrag вызывается даже в том случае, если в процессе перемещения курсор вышел за пределы окна аплета.

Вход курсора мыши в область окна аплета

Метод mouseEnter получает управление, когда курсор мыши в процессе перемещения по экрану попадает в область окна аплета:

public boolean mouseEnter(Event evt, int x, int y);

Вы можете использовать этот метод для активизации аплета, на который указывает курсор мыши.

Выход курсора мыши из области окна аплета

Метод mouseExit вызывается при покидании куросром окна аплета:

public boolean mouseExit(Event evt, int x, int y);

Если пользователь убрал курсор из окна аплета, активизированного методом mouseEnter, то метод mouseExit может переключить аплет в пассивное состояние.