Problemas con el portapapeles en flex y flash

Con flex y flash podemos mandar texto al portapapeles(clippboard) como si hicieramos control + c.

La propiedad se encuentra dentro del objeto  flash.system.System  y se llama de la siguiente forma:

import flash.system.System;// debemos importar el objeto

System.setClipboard(«texto»);

Sin embargo puede haber problemas al copiar saltos de línea. Por ejemplo si intentamos poner varias líneas
con \n no nos copiará los saltos, debemos usar \r\n.

import flash.system.System;// debemos importar el objeto

system.setclippboard(«\r\nlinea1\r\nlinea2»);

A pesar de todo puede que el problema sea de el procesador de texto donde realiza la copia, por ejemplo si usamos \n
en notepad no nos copiará los saltos de línea pero sin embargo si lo hará en Flash o  Flex. De todas formas la mejor manera de asegurarnos que los saltos de línea se copian al portapapeles sería con retorno de carro más línea nueva \r\n.

Ejemplo:

<?xml version=»1.0″ encoding=»utf-8″?>
<mx:Application xmlns:mx=»http://www.adobe.com/2006/mxml» layout=»absolute»
creationComplete=»copiarPortatpepeles()»>

<mx:Script>
<![CDATA[
public function copiarPortatpepeles():void
{
System.setClipboard(txtArea.text)
}
]]>
</mx:Script>

<mx:TextArea click=»copiarPortatpepeles()» text=»Esto se copia al portapepeles» x=»10″ y=»10″ id=»txtArea»/>
</mx:Application>

Carlos Dk

Apasionado por la enseñanza y el SEO

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.