Пакет | flashx.textLayout.events |
Класс | public class FlowElementMouseEvent |
Наследование | FlowElementMouseEvent Event Object |
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5 |
Для прослушивания этого типа события можно добавить прослушиватель события к элементу ссылки. При принятии решения об отмене события путем вызова метода Event.preventDefault()
, поведение по умолчанию, связанное с событием, не будет реализовано.
Если прослушиватель событий не добавляется к элементу ссылки или функция прослушивателя событий не обеспечивает отмену поведения, событие отправляется повторно, однако на этот раз экземпляром TextFlow, связанным с элементом ссылки, а не непосредственно элементом ссылки. Благодаря этому обеспечивается вторая возможность прослушивания данного события с помощью прослушивателя события, присоединенного к экземпляру TextFlow.
События FlowElementMouseEvent передаются только в том случае, если текст не может быть отредактирован или если клавиша Ctrl была нажата одновременно с действием мыши.
События следующих шести типов передаются только в том случае, если текст не может быть отредактирован или если была нажата клавиша Ctrl:
-
FlowElementMouseEvent. НАЖАТЬ
-
FlowElementMouseEvent. MOUSE_DOWN
-
FlowElementMouseEvent. MOUSE_UP
-
FlowElementMouseEvent. MOUSE_MOVE
-
FlowElementMouseEvent. ROLL_OVER
-
FlowElementMouseEvent. ROLL_OUT
Связанные элементы API
Свойство | Определено | ||
---|---|---|---|
bubbles : Boolean [только для чтения]
Определяет, является ли событие событием восходящей цепочки. | Event | ||
cancelable : Boolean [только для чтения]
Указывает, можно ли предотвратить поведение, связанное с событием. | Event | ||
constructor : Object
Ссылка на объект класса или функцию конструктора для данного экземпляра объекта. | Object | ||
currentTarget : Object [только для чтения]
Объект, активно обрабатывающий объект Event с помощью прослушивателя событий. | Event | ||
eventPhase : uint [только для чтения]
Текущая фаза в потоке событий. | Event | ||
flowElement : FlowElement
Элемент FlowElement, передавший событие. | FlowElementMouseEvent | ||
originalEvent : MouseEvent
Первоначальное событие мыши, созданное в результате действия мыши. | FlowElementMouseEvent | ||
target : Object [только для чтения]
Целевой объект события. | Event | ||
type : String [только для чтения]
Тип события. | Event |
Метод | Определено | ||
---|---|---|---|
FlowElementMouseEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = true, flowElement:FlowElement = null, originalEvent:MouseEvent = null)
Создает объект события, содержащий информацию о действии мыши. | FlowElementMouseEvent | ||
Создает дубликат экземпляра подкласса Event. | Event | ||
Служебная функция для реализации метода toString() в пользовательских классах ActionScript 3.0 Event. | Event | ||
Показывает, определено ли заданное свойство для объекта. | Object | ||
Проверяет, выполнялся ли для события вызова метода preventDefault(). | Event | ||
Показывает, есть ли экземпляр класса Object в цепи прототипов объекта, заданного в качестве параметра. | Object | ||
Отменяет поведение по умолчанию для события, если такое поведение можно отменить. | Event | ||
Показывает наличие заданного свойства и его перечисляемость. | Object | ||
Задает доступность динамического свойства для операций цикла. | Object | ||
Отменяет обработку прослушивателей событий в текущем узле, а также во всех узлах, которые следуют в потоке событий за текущим узлом. | Event | ||
Отменяет обработку прослушивателей событий в узлах, которые следуют в потоке событий за текущим узлом. | Event | ||
Возвращает строковое представление этого объекта, отформатированного в соответствии со стандартами, принятыми для данной локали. | Object | ||
Возвращает строку, содержащую все свойства объекта Event. | Event | ||
Возвращает элементарное значение заданного объекта. | Object |
Константа | Определено | ||
---|---|---|---|
CLICK : String = "click" [статические]
Задает значение свойства type для объекта события click. | FlowElementMouseEvent | ||
MOUSE_DOWN : String = "mouseDown" [статические]
Задает значение свойства type для объекта события mouseDown. | FlowElementMouseEvent | ||
MOUSE_MOVE : String = "mouseMove" [статические]
Задает значение свойства type для объекта события mouseMove. | FlowElementMouseEvent | ||
MOUSE_UP : String = "mouseUp" [статические]
Задает значение свойства type объекта события mouseUp. | FlowElementMouseEvent | ||
ROLL_OUT : String = "rollOut" [статические]
Задает значение свойства type для объекта события rollOut. | FlowElementMouseEvent | ||
ROLL_OVER : String = "rollOver" [статические]
Задает значение свойства type для объекта события rollOver. | FlowElementMouseEvent |
flowElement | свойство |
flowElement:FlowElement
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5 |
Элемент FlowElement, передавший событие.
Реализация
public function get flowElement():FlowElement
public function set flowElement(value:FlowElement):void
Связанные элементы API
originalEvent | свойство |
originalEvent:MouseEvent
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5 |
Первоначальное событие мыши, созданное в результате действия мыши. Это свойство может содержать одно из следующих значений:
MouseEvent.CLICK
MouseEvent.MOUSE_DOWN
MouseEvent.MOUSE_UP
MouseEvent.MOUSE_MOVE
MouseEvent.MOUSE_OVER
MouseEvent.MOUSE_OUT
В большинстве случаев первоначальное событие соответствует событию, передаваемому экземпляром элемента ссылки. События соответствуют событиям click
, mouseDown
, mouseOut
и mouseOver
. Однако возможны два случая, при которых первоначальное событие преобразуется экземпляром элемента ссылки в связанное событие. Если элемент ссылки обнаруживает событие mouseOver
, то отправляется событие rollOver
. Аналогично, если элемент ссылки обнаруживает событие mouseOut
, передается событие rollOut.
Как правило, целевой объект события и координаты курсора мыши связаны с экземпляром TextLine, содержащим элемент ссылки.
Реализация
public function get originalEvent():MouseEvent
public function set originalEvent(value:MouseEvent):void
Связанные элементы API
FlowElementMouseEvent | () | Конструктор |
public function FlowElementMouseEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = true, flowElement:FlowElement = null, originalEvent:MouseEvent = null)
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5 |
Создает объект события, содержащий информацию о действии мыши. Объекты Event передаются прослушивателям событий в качестве параметров. Рекомендуется использовать этот конструктор в том случае, если планируется передача события вручную. Применение конструктора для прослушивания объектов FlowElementMouseEvent, созданных экземпляром FlowElement, не требуется.
Параметрыtype:String — Тип события. Прослушиватели событий могут получать эту информацию через унаследованное свойство type . Используется шесть типов: FlowElementMouseEvent.CLICK , FlowElementMouseEvent.MOUSE_DOWN , FlowElementMouseEvent.MOUSE_MOVE , FlowElementMouseEvent.MOUSE_UP , FlowElementMouseEvent.ROLL_OVER и FlowElementMouseEvent.ROLL_OUT .
| |
bubbles:Boolean (default = false ) — Определяет, участвует ли объект Event в фазе восходящей цепочки потока событий. Объекты FlowElementMouseEvent не являются элементами восходящей цепочки.
| |
cancelable:Boolean (default = true ) — Определяет, можно ли отменить объект Event. Прослушиватели событий могут получать эту информацию через унаследованное свойство cancelable . Объекты FlowElementMouseEvent могут быть отменены. Отмена поведения по умолчанию, связанного с этим событием, осуществляется путем вызова метода preventDefault() в прослушивателе событий.
| |
flowElement:FlowElement (default = null ) — Экземпляр FlowElement, в настоящее время LinkElement, связанный с этим событием. Прослушиватели событий могут получать эту информацию через свойство flowElement .
| |
originalEvent:MouseEvent (default = null ) — Первоначальное событие мыши, возникшее для экземпляра flowElement. Прослушиватели событий могут получать эту информацию через свойство originalEvent .
|
CLICK | Константа |
public static const CLICK:String = "click"
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5 |
Задает значение свойства type
для объекта события click
.
Связанные элементы API
MOUSE_DOWN | Константа |
public static const MOUSE_DOWN:String = "mouseDown"
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5 |
Задает значение свойства type
для объекта события mouseDown
.
Связанные элементы API
MOUSE_MOVE | Константа |
public static const MOUSE_MOVE:String = "mouseMove"
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5 |
Задает значение свойства type
для объекта события mouseMove
.
Связанные элементы API
MOUSE_UP | Константа |
public static const MOUSE_UP:String = "mouseUp"
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5 |
Задает значение свойства type
объекта события mouseUp
.
Связанные элементы API
ROLL_OUT | Константа |
public static const ROLL_OUT:String = "rollOut"
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5 |
Задает значение свойства type
для объекта события rollOut
.
Связанные элементы API
ROLL_OVER | Константа |
public static const ROLL_OVER:String = "rollOver"
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5 |
Задает значение свойства type
для объекта события rollOver
.
Связанные элементы API
В этом примере показан метод прослушивания событий мыши, которые могут произойти в экземплярах LinkElement. Двумя ключевыми шагами являются вызов метода addEventListener() для каждого типа события и создание функции обработчика событий.
Вызов addEventListener()
осуществляется для экземпляра LinkElement. При этом можно применять простые строки, такие как click
или mouseDown
, однако надежнее использовать статические константы. В примере представлены константы класса MouseEvent, поскольку в классе FlowElementMouseEvent статические константы отсутствуют.
В этом примере содержится только одна функция обработчика событий, поскольку код является одинаковым для всех событий. Как правило, код, обеспечивающий реакцию на каждый тип события, будет отличаться, и в этом случае оптимальным вариантом может являться наличие отдельной функции обработчика событий для каждого вызова addEventListener()
.
package flashx.textLayout.events.examples { import flash.display.Sprite; import flash.events.MouseEvent; import flashx.textLayout.container.ContainerController; import flashx.textLayout.elements.TextFlow; import flashx.textLayout.elements.ParagraphElement; import flashx.textLayout.elements.SpanElement; import flashx.textLayout.elements.LinkElement; import flashx.textLayout.events.FlowElementMouseEvent; import flashx.textLayout.formats.TextLayoutFormat; public class FlowElementMouseEvent_example extends Sprite { private var tf:TextFlow; public function FlowElementMouseEvent_example() { // define TextFlow tf = new TextFlow(); // define link element var linkPar:ParagraphElement = new ParagraphElement(); var linkEl:LinkElement = new LinkElement(); linkEl.href = "http://www.adobe.com/go/flashplayer"; linkEl.target = "_blank"; // when link is clicked, open a new browser window var span1:SpanElement = new SpanElement(); // for text associated with link span1.text = "Get Flash Player"; linkEl.addChild(span1); // define paragraph element for name of events dispatched var textPar:ParagraphElement = new ParagraphElement(); var span2:SpanElement = new SpanElement(); span2.text ="Three most recent events:"; // add span (text) and link elements to the TextFlow linkPar.addChild(linkEl); // add LinkElement to first paragraph textPar.addChild(span2); // add header text to second paragraph tf.addChild(linkPar); // add paragraph with link to text flow tf.addChild(textPar); // add paragraph for events to text flow // add event listeners for all six FlowElementMouseEvent types linkEl.addEventListener(FlowElementMouseEvent.CLICK, linkHandler); linkEl.addEventListener(FlowElementMouseEvent.MOUSE_DOWN, linkHandler); linkEl.addEventListener(FlowElementMouseEvent.MOUSE_MOVE, linkHandler); linkEl.addEventListener(FlowElementMouseEvent.MOUSE_UP, linkHandler); linkEl.addEventListener(FlowElementMouseEvent.ROLL_OVER, linkHandler); linkEl.addEventListener(FlowElementMouseEvent.ROLL_OUT, linkHandler); // create text container for link and event listing text var linkContainer:Sprite = new Sprite(); linkContainer.x = 10; linkContainer.y = 10; var linkController:ContainerController = new ContainerController(linkContainer,200,80); var linkControllerFormat:TextLayoutFormat = new TextLayoutFormat(); linkControllerFormat.paddingTop = 3; linkController.format = linkControllerFormat; tf.flowComposer.addController(linkController); // Add linkContainer to Display List addChild(linkContainer); tf.flowComposer.updateAllControllers(); } // event handler function private function linkHandler(ev:FlowElementMouseEvent):void { var par:ParagraphElement = new ParagraphElement(); var span:SpanElement = new SpanElement(); span.text = ev.type; par.addChild(span); tf.replaceChildren(2,2,par); if (tf.numChildren > 5) { tf.removeChildAt(5); } tf.flowComposer.updateAllControllers(); } } }
Tue Jun 12 2018, 11:34 AM Z