• › Connexion
  • Blog RIA.do.be
  • Blog Web2Entreprise
Section separator

Catégories

  • Annonces
  • Évènements
  • Concepts et Usages
  • Général
  • Notes Techniques
  • Références
Adobe EMEA Silver Solution Partner Section separator

Abonnement

  • RSS Articles Articles (RSS)
  • RSS Articles Commentaires (RSS)
  • RSS mail Articles (Email)
  • Populaires
  • Récents
  • Commentaires
  • Premiers Retours sur l’Adobe MAX 2009 (vu 13 009 fois)
  • Comment forcer les styles des composants Flex/AS3 d’une librairie SWC réutilisable (vu 5 786 fois)
  • Utiliser le framework Cairngorm pour Flex 2 (1/4) (vu 5 443 fois)
  • Architecture MVC: Cairngorm ou PureMVC ? (vu 3 260 fois)
  • Le problème du ModelLocator Cairngorm (vu 3 068 fois)
Articles récents
  • Ouverture des inscriptions pour le webinar ConfluenceFx
  • Développeur, Communicant, Designer ou Ergonome ? Changez pour Kap IT
  • Application AIR : Comment Sauvegarder/Charger un Document et lui Associer une Extension ?
  • Détection de l’Événement « Coller » avec Flex Builder 3 et Flash Player 9
  • Premiers Retours sur l’Adobe MAX 2009
Commentaires récents
  • Fadi Mansour dans Détection de l’Événement « Coller » avec Flex Builder 3 et Flash Player 9
  • nico dans Détection de l’Événement « Coller » avec Flex Builder 3 et Flash Player 9
  • Florian dans Application AIR : Comment Sauvegarder/Charger un Document et lui Associer une Extension ?
  • Fadi Mansour dans Comment intégrer une application Flex dans une application Flash ou AS3
  • yoann dans Comment intégrer une application Flex dans une application Flash ou AS3

Auteurs

  • Alexis Kartmann (12)
  • Benoit Kogut-Kubiak (2)
  • Christoher Bograt (1)
  • Cyril Daloz (7)
  • Daniel Pesic (5)
  • Fadi Mansour (3)
  • Florian Fesseler (1)
  • Guillaume Mignard (2)
  • Jean de Laulanié (2)
  • Julien Revel (19)
  • Mahmoud Ramadan (1)
  • Matthieu Jobert (1)
  • Stéphane Guyot (1)
  • Stéphane Koëth (2)
  • Yann Graufogel (2)
Section separator

Tags

Kap IT AS3 RIA Kap Lab Corporate Cairngorm LCDS BlazeDS AMF MVC livecycle builder RTMP compilation skin Adobe MAX Web 2.0 Framework JVM actionscript PureMVC Flex fds AIR kapinspect
Section separator

Archives

  • février 2010 (1)
  • décembre 2009 (2)
  • novembre 2009 (1)
  • octobre 2009 (3)
  • septembre 2009 (1)
  • août 2009 (1)
  • avril 2009 (2)
  • février 2009 (2)
  • janvier 2009 (4)
  • décembre 2008 (4)
  • novembre 2008 (2)
  • octobre 2008 (2)
  • septembre 2008 (2)
  • août 2008 (1)
  • juin 2008 (1)
  • avril 2008 (4)
  • mars 2008 (3)
  • février 2008 (2)
  • janvier 2008 (1)
  • décembre 2007 (3)
  • novembre 2007 (1)
  • septembre 2007 (1)
  • juillet 2007 (1)
  • juin 2007 (1)
  • mai 2007 (4)
  • avril 2007 (8)
  • mars 2007 (2)
  • février 2007 (1)

Marque-pages

  • Adobe Labs
  • AStrois Blog
  • Code moi un mouton
  • Coma Informatique
Section separator

Kap IT

  • Site Web
  • Blog Web2Entreprise
  • Blog RIA.do.be
  • Lab

Blog RIA.do.be

Veille, Recherche et Développement RIA Flex-AS3-LiveCycle

Détection de l’Événement « Coller » avec Flex Builder 3 et Flash Player 9

Par Fadi MansourgravatarFermerAuteur : Fadi Mansour Email : fmansour@kapit.fr
Site : http://kapit.fr
A propos : Voir les autres billets de l'auteur (3)
, publié le 5 novembre 2009

Introduction

Pour des raisons de sécurité, une application Flex qui tourne dans Flash Player 9 ne peut accéder au presse-papier. En effet, l’accès à ce dernier pourrait permettre à une application de récupérer des informations auxquelles elle ne devrait pas avoir droit. Car en archivant les données qui transitent par le presse-papier, il serait possible de récupérer des données sensibles (mot de passe, informations privées, etc).

Problématique

Pouvoir récupérer le contenu de presse-papier et le manipuler avant de l’afficher dans un champ de saisie par exemple du genre TextInput ou TextArea.

Voir notre solution.

Solution

Les composants de saisie en Flex diffusent un événement textInput quand l’utilisateur saisit, supprime ou colle un texte dans le composant visuel.

Pour savoir si la raison qui provoque la diffusion de l’événement textInput est le fait de coller un texte dans le composant de saisie, il est nécessaire de capter les 2 événements keyDown et keyUp pour vérifier si les touches Ctrl et V étaient appuyées ou relâchées.

En résumé, si les touches Ctrl et V etaient appuyées avant de capter l’événement textInput, nous sommes bien dans le cas où l’utilisateur est entrain de coller un texte dans un composant de saisie.

Une fois que nous avons vérifié que nous sommes dans le cas où un utilisateur est en train de coller un texte dans un composant de saisie. Il suffit de capter l’événement change pour manipuler le texte avant de l’afficher.

Ce qui donne en Flex (voir ci-dessous).

Code

	<![CDATA[
		private var isCtrl:Boolean = false;
		private var isPaste:Boolean = false;

		// Vérifier si la touche Ctrl et la touche "V" sont enfoncées
		private function onKeyDown(event:KeyboardEvent):void
		{
			if(event.ctrlKey && event.keyCode == 17)
			{
				isCtrl = true;
			}
		}

		// Vérifier si la touche Ctrl etait relachée
		private function onKeyUp(event:KeyboardEvent):void
		{
			if(event.keyCode == 17)
			{
				isCtrl = false;
			}
		}

		// Si cet événement est dispatché, que les touches "Ctrl + V" sont enfoncées, alors il s'agit d'une action "Coller" (Paste)
		private function onPaste(event:TextEvent):void
		{
			if(isCtrl)
			isPaste = true;
		} 

		// Manipuler le texte affiché si c'est une action "Coller"
		private function onChange():void
		{
			if(isPaste)
			{
				isPaste = false;
				txtInput.text = "This is a formatted text: "+ txtInput.text;
			}
		}
	]]>

Articles relatifs

  • Utilisation d’un TreeMap en Flex et en as3 : À la découverte des classes AS3 du package mx du framework Flex (0)
  • Tout Savoir sur les Fuites Mémoires (ou Memory Leak) en Flex (0)
  • Nouvelle Réalisation Kap IT ! SNCF.com (0)
  • MAX2007 : utilisation des meta données en Flex (0)
  • Les objets en Flex / AS3 - deuxième partie: Accès aux propriétés, notation pointée et notation indexée [] (6)
Catégories: Notes Techniques
Tags: AS3, Clipboard, Flash Player 9, Flex 3, Presse-Papier

2 commentaires sur “Détection de l’Événement « Coller » avec Flex Builder 3 et Flash Player 9”

  1. nico dit :
    25 janvier 2010 à 9:47

    Bonjour,

    Avez vous une solution pour capter l’évènement d’un textInput lorsque la valeur de celui-ci est automatiquement initialisé, genre par une popup ??

    Merci !

    Nicolas

  2. Fadi Mansour dit :
    31 janvier 2010 à 23:45

    Bonjour Nicolas,

    Je ne pense pas qu’il y ait un événement qui soit déclenché lorsque l’on change la valeur de TextInput programmatiquement comme par exemple : txtInput.txt = “Hello World”.

    Ce que vous pouvez faire, c’est déclencher un événement customisé pour envoyer une notification.
    Par exemple : dispatchEvent(new Event(’Text_Input_Changed’)).
    Et capter cet événement au bon endroit.

    Fadi

Laisser une réponse

Cliquer ici pour annuler la réponse.

Article précédent
Article suivant
 
Haut de page

Copyright © 2009 Kap IT - Blog RIA - Blog Web2Entreprise - Kap Lab

Motorisé par Wordpress - Thème avec YAML par Kap IT