| Package | flash.desktop |
| Classe | public class Clipboard |
| Héritage | Clipboard Object |
| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.0 |
generalClipboard.
Un objet Clipboard peut contenir les mêmes informations en plusieurs formats. Le fait de fournir les informations en plusieurs formats augmente les chances qu'une autre application puisse les exploiter. Ajoutez des données dans un objet Clipboard avec la méthode setData() ou setDataHandler().
Les formats standard sont :
Ces constantes des noms des formats standard sont définies dans la classe ClipboardFormats.
Lors d'un transfert entre Flash Player ou une application AIR et le système d'exploitation, les formats standard sont automatiquement convertis entre les types de données ActionScript et le presse-papiers natif.
Vous pouvez utiliser des formats définis par l'application pour ajouter des objets ActionScript dans un objet Clipboard. Si un objet est sérialisable, une référence et un clone de l'objet peuvent être rendus disponibles. Les références d'objet ne sont valides que dans l'application d'origine.
Lorsque la conversion des informations à transférer en un format particulier réclame des calculs poussés, vous pouvez fournir le nom d'une fonction qui effectue la conversion. La fonction est appelée si, et seulement si, ce format est lu par le composant ou l'application de réception. Ajoutez une fonction de rendu différé à un objet Clipboard avec la méthode setDataHandler().
Remarque réservée aux applications AIR : les objets Clipboard référencés par les objets événement déclenchés pour les événements de glisser/déposer et de copier/coller HTML ne sont pas du même type que l'objet AIR Clipboard. L'objet Clipboard JavaScript est décrit dans le guide du développeur AIR.
Voir aussi
| Propriété | Défini par | ||
|---|---|---|---|
![]() | constructor : Object Référence à l'objet de classe ou à la fonction constructeur d'une occurrence donnée d'un objet. | Object | |
| formats : Array [lecture seule] Tableau de chaînes contenant les noms des formats de données disponibles dans cet objet Clipboard. | Clipboard | ||
| generalClipboard : Clipboard [statique] [lecture seule] Presse-papiers du système d'exploitation. | Clipboard | ||
![]() | prototype : Object [statique] Référence à l'objet prototype d'un objet de classe ou fonction. | Object | |
| Méthode | Défini par | ||
|---|---|---|---|
Crée un objet Clipboard vide. | Clipboard | ||
Supprime toutes les représentations de données dans cet objet Clipboard. | Clipboard | ||
Supprime la représentation des données au format spécifié. | Clipboard | ||
Récupère les données du presse-papiers si elles sont présentes au format spécifié. | Clipboard | ||
Vérifie si des données sont présentes au format spécifié dans cet objet Clipboard. | Clipboard | ||
![]() | Indique si la propriété spécifiée d'un objet est définie. | Object | |
![]() | Indique si une occurrence de la classe Object figure dans la chaîne de prototype de l'objet spécifié en tant que paramètre. | Object | |
![]() | Indique si la propriété spécifiée existe et est énumérable. | Object | |
Ajoute une représentation des informations à transférer dans le format de données spécifié. | Clipboard | ||
Ajoute une référence à une fonction de gestionnaire qui produit les données pour le format spécifié à la demande. | Clipboard | ||
![]() | Définit la disponibilité d'une propriété dynamique pour les opérations en boucle. | Object | |
![]() | Renvoie la représentation sous forme de chaîne de l'objet spécifié. | Object | |
![]() | Renvoie la valeur primitive de l'objet spécifié. | Object | |
| formats | propriété |
formats:Array [lecture seule] | Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.0 |
Tableau de chaînes contenant les noms des formats de données disponibles dans cet objet Clipboard.
Les constantes de chaîne des noms des formats standard sont définies dans la classe ClipboardFormats. D'autres chaînes, définies par l'application, peuvent également être utilisées comme noms de format pour transférer les données sous forme d'objet.
public function get formats():ArrayVoir aussi
formats du presse-papiers du système :
var availableFormats:Array = Clipboard.generalClipboard.formats;
| generalClipboard | propriété |
generalClipboard:Clipboard [lecture seule] | Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.0 |
Presse-papiers du système d'exploitation.
Toutes les données collées dans le presse-papiers du système sont disponibles pour les autres applications. Cela peut comprendre le code distant non sécurisé s'exécutant dans un navigateur Web.
Remarque : dans les applications de Flash Player 10, une opération de collage à partir du presse-papiers implique tout d'abord un événement utilisateur (par exemple, utilisation du raccourci clavier de la commande Coller ou clic de souris sur la commande Coller d'un menu contextuel). Clipboard.getData() ne renvoie le contenu du presse-papiers que si InteractiveObject a reçu et exécute un événement coller. En aucun autre cas, l'appel à Clipboard.getData() ne peut échouer. La même restriction s'applique dans le contenu AIR qui se trouve en dehors du sandbox de l'application.
L'objet generalClipboard est créé automatiquement. Vous ne pouvez pas affecter une autre occurrence Clipboard à cette propriété. Vous pouvez par contre utiliser les méthodes getData() et setData() pour lire et écrire des données dans l'objet existant.
Il est toujours préférable d'effacer le presse-papiers avant d'y écrire de nouvelles données afin de s'assurer que les anciennes données de tous les formats sont effacées.
public static function get generalClipboard():Clipboardimport flash.desktop.ClipboardFormats; var copy:String = "A string to copy to the system clipboard."; Clipboard.generalClipboard.clear(); Clipboard.generalClipboard.setData(ClipboardFormats.TEXT_FORMAT, copy);
import flash.desktop.ClipboardFormats; var pasteData:String = Clipboard.generalClipboard.getData(ClipboardFormats.TEXT_FORMAT) as String;
| Clipboard | () | Constructeur |
public function Clipboard()| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.0 |
Crée un objet Clipboard vide.
IllegalOperationError —
new Clipboard() n'est pas pris en charge dans Flash Player, car seul le presse-papiers du système d'exploitation peut être utilisé dans Flash Player. Pour les opérations de copier-coller impliquant le presse-papiers du système d'exploitation, utilisez l'objet Clipboard.generalClipboard au lieu de créer un nouvel objet Clipboard. Ne renvoie pas d'erreur dans une application AIR.
|
Voir aussi
Remarque : pour les opérations de copier-coller impliquant le presse-papiers du système d'exploitation, utilisez l'objet Clipboard.generalClipboard au lieu de créer un nouveau presse-papiers.
import flash.desktop.Clipboard; var clipboard:Clipboard = new Clipboard();
| clear | () | méthode |
public function clear():void| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.0 |
Supprime toutes les représentations de données dans cet objet Clipboard.
Clipboard.generalClipboard.clear();
| clearData | () | méthode |
public function clearData(format:String):void| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.0 |
Supprime la représentation des données au format spécifié.
Paramètres
format:String — Format des données à supprimer. |
ClipboardFormats.TEXT_FORMAT dans le presse-papiers du système :
import flash.desktop.ClipboardFormats; Clipboard.generalClipboard.clearData(ClipboardFormats.TEXT_FORMAT);
| getData | () | méthode |
public function getData(format:String, transferMode:String = "originalPreferred"):Object| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.0 |
Récupère les données du presse-papiers si elles sont présentes au format spécifié. Dans Flash Player, un événement utilisateur (pression de touche ou clic de souris, par exemple) est requis avant d'utiliser getData(). Appelez getData() au sein d'un événement paste lancé par un utilisateur. Dans AIR, cette restriction s'applique uniquement au contenu s'exécutant hors du sandbox de sécurité de l'application.
Lors d'un accès à un format de données standard, les données sont renvoyées sous forme de nouvel objet de type Flash Player ou AIR correspondant.
Lors d'un accès à un format défini par l'application, la valeur du paramètre transferMode détermine si une référence à l'objet original ou un objet anonyme contenant une copie sérialisée de l'objet original est renvoyé. Lorsqu'un mode originalPreferred ou clonePreferred est spécifié, Flash Player ou AIR renvoie l'autre version lorsque la version favorite n'est pas disponible. Lorsqu'un mode originalOnly ou cloneOnly est spécifié, Flash Player ou AIR renvoie null lorsque la version demandée n'est pas disponible.
Paramètres
format:String — Format des données à renvoyer. La chaîne de format peut contenir l'un des noms standard définis dans la classe ClipboardFormats ou un nom défini par l'application. | |
transferMode:String (default = "originalPreferred") — Indique si une référence ou une copie sérialisée doit être renvoyée lors d'un accès à un format de données défini par l'application. La valeur doit être l'un des noms définis dans la classe ClipboardTransferMode. Cette valeur est ignorée pour les formats de données standard ; une copie est toujours renvoyée. |
Object — Objet dont le type correspond au format des données. |
Error —
transferMode n'est pas l'un des noms définis dans la classe ClipboardTransferMode.
| |
IllegalOperationError — L'objet Clipboard demandé n'est plus dans le domaine (AIR uniquement). | |
SecurityError — La lecture ou l'écriture dans le presse-papiers n'est plus autorisée dans ce contexte. Dans Flash Player, l'appel de cette méthode n'aboutit que lors du traitement d'un événement utilisateur (pression de touche ou clic de souris, par exemple). Dans AIR, cette restriction s'applique uniquement au contenu s'exécutant hors du sandbox de sécurité de l'application. |
Voir aussi
import flash.desktop.ClipboardFormats; var pasteData:String = Clipboard.generalClipboard.getData(ClipboardFormats.TEXT_FORMAT) as String;
| hasFormat | () | méthode |
public function hasFormat(format:String):Boolean| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.5 |
Vérifie si des données sont présentes au format spécifié dans cet objet Clipboard.
Utilisez les constantes dans la classe ClipboardFormats pour référencer les noms de format standard.
Paramètres
format:String — Type de format à vérifier. |
Boolean —
true, si des données sont présentes au format spécifié.
|
IllegalOperationError — L'objet Clipboard demandé n'est plus dans le domaine (AIR uniquement). | |
SecurityError — La lecture ou l'écriture dans le presse-papiers n'est plus autorisée dans ce contexte. |
Voir aussi
if(Clipboard.generalClipboard.hasFormat(ClipboardFormats.TEXT_FORMAT)){
//do something
}| setData | () | méthode |
public function setData(format:String, data:Object, serializable:Boolean = true):Boolean| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.0 |
Ajoute une représentation des informations à transférer dans le format de données spécifié. Dans Flash Player, un événement utilisateur (pression de touche ou clic de souris, par exemple) est requis avant d'utiliser setData(). Dans AIR, cette restriction s'applique uniquement au contenu s'exécutant hors du sandbox de sécurité de l'application.
Différentes représentations des mêmes informations peuvent être ajoutées dans le presse-papiers dans divers formats. Ceci augmente la capacité des autres composants ou applications à exploiter les données disponibles. Par exemple, dans une application AIR, une image peut être ajoutée sous forme de données bitmap pour une utilisation dans des applications de retouche d'images, sous forme d'objet Bitmap pour une utilisation avec d'autres applications AIR et sous forme de fichier PNG encodé pour un transfert vers le système de fichiers natif.
Le paramètre data doit être du type de données approprié pour le format spécifié :
| Format | Type | Description |
|---|---|---|
ClipboardFormats.TEXT_FORMAT
|
Chaîne
| Données de chaîne |
ClipboardFormats.HTML_FORMAT
|
Chaîne
| Données de chaîne HTML |
ClipboardFormats.URL_FORMAT
|
Chaîne
| Chaîne URL (AIR uniquement) |
ClipboardFormats.RICH_TEXT_FORMAT
|
ByteArray
| Données RTF |
ClipboardFormats.BITMAP_FORMAT
|
BitmapData
| Données bitmap (AIR uniquement) |
ClipboardFormats.FILE_LIST_FORMAT
|
Tableau de File
| Tableau de fichiers (AIR uniquement) |
| Nom de format personnalisé | Tous | Référence d'objet et clone sérialisé |
Les noms de format personnalisé ne doivent pas commencer par « air: » ou « flash: ». Dans une application AIR, pour éviter les conflits de noms lorsque vous utilisez des formats personnalisés, vous pouvez utiliser l'ID de votre application ou un nom de package comme préfixe, par exemple « com.nomApplication.exemple.dataPacket ».
Dans le cas d'un transfert au sein de Flash Player ou d'une application ou entre Flash Player et des applications AIR, le paramètre serializable détermine si une référence et une copie doivent toutes deux être disponibles ou si seule une référence à un objet est disponible. Définissez serializable sur true pour que la référence et une copie de l'objet de données soient disponibles. Définissez serializable sur false pour que seule la référence de l'objet soit disponible. Les références d'objet n'étant valides que dans l'application en cours, le fait de définir serializable sur false implique également que les données de ce format ne soient pas disponibles pour les autres applications AIR ou Flash Player. Un composant peut choisir d'obtenir la référence ou la copie de l'objet en définissant le mode de transfert du presse-papiers approprié lors de l'accès aux données de ce format.
Remarque : les formats standard étant toujours convertis en formats natifs lorsque les données sont collées ou glissées (AIR uniquement) hors d'une application prise en charge, la valeur du paramètre serializable n'affecte pas la disponibilité des données aux formats standard pour les applications non AIR ou non Flash Player.
Pour différer le rendu des données pour un format, utilisez plutôt la méthode setDataHandler(). Si les méthodes setData() et setDataHandler() sont toutes deux utilisées pour ajouter une représentation de données avec le même nom de format, la fonction du gestionnaire n'est jamais appelée.
Paramètres
format:String — Format des données. | |
data:Object — Informations à ajouter. | |
serializable:Boolean (default = true) —
Définissez true pour les objets qui ne peuvent pas être sérialisés (ni désérialisés).
|
Boolean —
true si les données ont bien été définies ; false dans le cas contraire. Dans Flash Player, renvoie false lorsque format est un membre non pris en charge de ClipboardFormats. (Flash Player ne prend pas en charge ClipboardFormats.URL_FORMAT, ClipboardFormats.FILE_LIST_FORMAT et ClipboardFormats.BITMAP_FORMAT ).
|
IllegalOperationError — L'objet Clipboard demandé n'est plus dans le domaine (AIR uniquement). | |
SecurityError — La lecture ou l'écriture dans le presse-papiers n'est plus autorisée dans ce contexte. Dans Flash Player, l'appel de cette méthode n'aboutit que lors du traitement d'un événement utilisateur (pression de touche ou clic de souris, par exemple). Dans AIR, cette restriction s'applique uniquement au contenu s'exécutant hors du sandbox de sécurité de l'application. | |
TypeError —
format ou data est null.
|
Voir aussi
import flash.desktop.ClipboardFormats; var htmlString:String = "<html><body>Body content</body></html>"; Clipboard.generalClipboard.setData(ClipboardFormats.TEXT_FORMAT, urlString); Clipboard.generalClipboard.setData(ClipboardFormats.HTML_FORMAT, urlString);
| setDataHandler | () | méthode |
public function setDataHandler(format:String, handler:Function, serializable:Boolean = true):Boolean| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.0 |
Ajoute une référence à une fonction de gestionnaire qui produit les données pour le format spécifié à la demande. Utilisez cette méthode pour différer la création ou le rendu des données jusqu'à ce qu'elles soient réellement accédées. Dans Flash Player, un événement utilisateur (pression de touche ou clic de souris, par exemple) est requis avant d'utiliser setDataHandler(). Dans AIR, cette restriction s'applique uniquement au contenu s'exécutant hors du sandbox de sécurité de l'application.
La fonction du gestionnaire doit renvoyer le type de données approprié pour le format spécifié :
| Format | Type renvoyé |
|---|---|
ClipboardFormats.TEXT_FORMAT
|
Chaîne
|
ClipboardFormats.HTML_FORMAT
|
Chaîne
|
ClipboardFormats.URL_FORMAT
|
Chaîne (AIR uniquement)
|
ClipboardFormats.RICH_TEXT_FORMAT
|
ByteArray
|
ClipboardFormats.BITMAP_FORMAT
|
BitmapData (AIR uniquement)
|
ClipboardFormats.FILE_LIST_FORMAT
|
Tableau de File (AIR uniquement)
|
| Nom de format personnalisé | Non Void |
La fonction de gestionnaire n'est appelée que lorsque les données au format spécifié sont lues, et seulement à ce moment-là. Notez que les données sous-jacentes peuvent changer entre le moment où le gestionnaire est ajouté et le moment où les données sont lues, sauf si votre application prend des mesures pour protéger les données. Le comportement qui se produit lorsque les données du presse-papier représentées par une fonction du gestionnaire sont lues plusieurs fois n'est pas garanti. Flash Player ou AIR peut renvoyer les données produites par le premier appel de la fonction ou rappeler la fonction. Ne comptez pas sur ces comportements.
Pour ajouter directement des données dans cet objet Clipboard, utilisez plutôt la méthode setData(). Si les méthodes setData() et setDataHandler() sont toutes deux appelées par le même nom de format, la fonction du gestionnaire n'est jamais appelée.
Paramètres
format:String — Fonction qui renvoie les données à transférer. | |
handler:Function — Format des données. | |
serializable:Boolean (default = true) —
Spécifiez true si l'objet renvoyé par handler peut être sérialisé (et désérialisé).
|
Boolean —
true si le gestionnaire a bien été défini ; false dans le cas contraire.
|
TypeError —
format ou handler est null.
| |
IllegalOperationError — L'objet Clipboard demandé n'est plus dans le domaine (AIR uniquement). | |
SecurityError — La lecture ou l'écriture dans le presse-papiers n'est plus autorisée dans ce contexte. Dans Flash Player, l'appel de cette méthode n'aboutit que lors du traitement d'un événement utilisateur (pression de touche ou clic de souris, par exemple). Dans AIR, cette restriction s'applique uniquement au contenu s'exécutant hors du sandbox de sécurité de l'application. |
Voir aussi
import flash.desktop.ClipboardFormats;
Clipboard.generalClipboard.setDataHandler(ClipboardFormats.TEXT_FORMAT, randomNumberGenerator);
public function randomNumberGenerator():String{
return Math.random().toString();
}Clipboard.generalClipboard.
Clipboard.generalClipboard.
package
{
import flash.display.Sprite;
import flash.desktop.Clipboard;
import flash.desktop.ClipboardFormats;
import flash.desktop.ClipboardTransferMode;
public class ClipboardExample extends Sprite
{
public function ClipboardExample()
{
var sally:String = "Sally";
var person:String;
copy(sally);
person = paste();
trace(person); //traces: "Sally"
}
private function copy(text:String):void{
Clipboard.generalClipboard.clear();
Clipboard.generalClipboard.setData(ClipboardFormats.TEXT_FORMAT, text);
}
private function paste():String{
if(Clipboard.generalClipboard.hasFormat(ClipboardFormats.TEXT_FORMAT)){
return String(Clipboard.generalClipboard.getData(ClipboardFormats.TEXT_FORMAT));
} else {return null;}
}
}
}