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>