2011-05-26 2 views
0

Je suis nouveau sur Flash et j'ai un TextArea que je voudrais faire en lecture seule pour que l'utilisateur ne puisse pas copier et coller le texte.Définir TextArea en lecture seule dans Flash?

Est-ce possible?

Exemples ou liens bienvenue Je ne l'apprentissage de l'esprit;)

Merci

+1

TextArea.editable = true OU false –

Répondre

3

Il y a une propriété editable pour le TextArea. Vous pouvez l'utiliser. Cependant, je suis à peu près sûr qu'il serait impossible de le faire entièrement copier-coller. Vous pouvez le rendre difficile, cependant. Peut-être que créer une image à partir du texte et l'afficher rendrait le texte difficile à copier, mais pas impossible.

0

est ici une classe je me suis vite fait que vous pourriez trouver utiles:

package 
{ 
    import flash.text.TextField; 
    import flash.display.Bitmap; 
    import flash.display.BitmapData; 

    public class BitmapText extends Bitmap 
    { 
     // vars 
     private var _textf:TextField; 

     /** 
     * Draws text onto the bitmap 
     * @param tf The TextField to draw 
     */ 
     public function drawText(tf:TextField):void 
     { 
      _textf = tf; 

      bitmapData = new BitmapData(tf.width,tf.height,true); 
      bitmapData.draw(tf); 
     } 

     /** 
     * Update text 
     * @param t The new text 
     */ 
     public function set text(t:String):void 
     { 
      if(_textf) 
      { 
       _textf.text = t; 
       drawText(_textf); 
      } 
     } 
    } 
} 

Et pour utiliser cette classe:

var t:TextField = new TextField(); 
t.text = "some copy"; 

var bt:BitmapText = new BitmapText(); 
bt.drawText(t); 

addChild(bt); 

bt.text = "some new text lol"; 

Comme vous pouvez le voir, vous pouvez facilement mettre à jour le texte via :

BitmapText.text = "new value"; 
+0

Cela ressemble à une surcharge. La définition de la balise éditable TextArea fournira la même protection * pour autant que je sache *. Si quelqu'un voulait copier le texte, dans les deux cas, il devrait décompiler le fichier SWF et trouver la ligne de code avec ce texte (et qui ferait cela?). –

+0

Vrai, honnêtement, je ne savais même pas qu'il y avait une propriété modifiable/sélectionnable haha. – Marty

+0

@Benjammin '- J'ai éditable désélectionné mais cela signifie juste qu'ils ne peuvent pas ajouter de texte à la boîte, ils peuvent toujours mettre en évidence pour copier et coller. Il peut être en baisse pour une zone de texte dyanique donc pensé qu'il pourrait aussi pour un composant TextAra. – CookieMonster

1

Tout ce que vous avez à faire est, faites un clic droit sur la zone de texte que vous avez placée sur y notre page web Ensuite, à partir de la fenêtre pop-up, cliquez sur "Modifier le tag" OU appuyez sur "Shift + F5". La fenêtre de propriété pour textarea sera distribuée. Cliquez sur l'option Général s'il n'est pas déjà sélectionné. Ensuite, cliquez simplement sur la case à cocher "lecture seule" dans la fenêtre de propriétés. Vous pouvez également empêcher le contenu de la zone textarea d'être sélectionné, copier et coller en cochant la case "case à cocher désactivée".

J'espère que cela va résoudre votre problème.