Буфер обмена является программным средством, которое может использоваться для кратковременного хранения данных и / или передачи данных между документами или приложениями посредством операций копирования и вставки.
В этом кратком совете мы создадим кнопку «Копировать в буфер обмена» во Flash.
Финальный SWF
Приведенный ниже пример — то, к чему мы будем стремиться в этом кратком совете.
Нажмите Cmd + V (или Ctrl + v на ПК), чтобы вставить текст в другое место.
Шаг 1: Краткий обзор
Два текстовых поля будут размещены на сцене, поле ввода и динамическое поле. Кнопка будет использоваться для получения и копирования текста поля ввода в буфер обмена, показывая сообщение в динамическом поле.
Теперь в этом совете мы будем обрабатывать буфер обмена в плагине Flash Player Browser, это означает, что у нас не будет доступа к классу flash.desktop.Clipboard, который доступен только в AIR, что сокращает наши возможные действия.
Шаг 2: Создайте новый файл
Откройте Flash и создайте новый файл Flash (ActionScript 3.0).
Установите размер сцены на 320 х 240 пикселей.
Шаг 3: Создайте текстовые поля
Каждый InteractiveObject (то есть каждый объект, с которым пользователь может взаимодействовать) отправляет события копирования и вставки . Если объект, который в данный момент имеет фокус, является TextField, поведение этого события по умолчанию состоит в том, что любой выделенный в данный момент текст в текстовом поле будет скопирован в буфер обмена. Вы можете прослушать эти события, используя:
1
2
3
|
myObject.addEventListener(Event.COPY, onCopy);
myObject.addEventListener(Event.CUT, onCut);
myObject.addEventListener(Event.PASTE, onPaste);
|
В этом совете мы сосредоточимся на методе System.setClipboard ().
Выберите Text Tool (T) и создайте два текстовых поля, динамическое и поле ввода.
Вы можете ввести текст в поле ввода, чтобы использовать его по умолчанию. Введите что-то, что должно быть скопировано точно так, как написано, например адрес электронной почты.
Шаг 4: Установите имена экземпляров
Откройте панель свойств и задайте имена экземпляров полей, как показано на рисунке.
Шаг 5: Создать кнопку
Кнопка вызовет действие копирования в буфер обмена.
Выберите инструмент Rectangle Tool (R), создайте прямоугольник размером 60×28 пикселей и заполните его # 333333. Добавьте статическое текстовое поле в качестве метки.
Преобразуйте фигуры в MovieClip (выберите их, затем нажмите « Изменить»> «Преобразовать в символ» ) и назовите кнопку copyButton .
Шаг 6: Откройте панель действий
Нажмите Option + F9 или перейдите в Окно> Действия, чтобы открыть Панель действий.
Шаг 7: Напишите функцию копирования
Это функция, которая будет копировать текст в буфер обмена.
1
2
3
4
5
|
function copyText(e:MouseEvent):void
{
System.setClipboard(myField.text);
messageField.text = «Copied!»;
}
|
Шаг 8: добавь слушателя мыши
Функция копирования вызывается MouseEvent.
К кнопке будет добавлен прослушиватель событий, который активирует функцию copyText, когда пользователь нажимает кнопку.
1
|
copyButton.addEventListener(MouseEvent.MOUSE_UP, copyText);
|
Шаг 9: Тест
Сохраните свою работу и нажмите Cmd + Return, чтобы запустить приложение.
Нажмите Cmd + V (или Ctrl + v на ПК), чтобы вставить текст в другое место.
Вывод
Это базовый пример того, как вы можете использовать эту функцию; экспериментируйте и используйте его в своих проектах!
Спасибо за прочтение!