Comment puis-je éviter CTRL + A de fonctionner avec TextField modifiable()TextField() Prévenir ctrl + a (tout sélectionner)
Répondre
L'exemple précédent ne fonctionne qu'avec les objets Flex Text et TextArea, cela fonctionne avec tous les objets flash.text. *.
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="init()">
<mx:Script>
<![CDATA[
import mx.core.UIComponent;
private var t:TextField;
private function init():void
{
t = new TextField();
t.height = 80;
t.width = 100;
t.type = TextFieldType.INPUT;
t.multiline = true;
var c:UIComponent = new UIComponent();
c.addChild(t);
foo.addChild(c);
addEventListener(KeyboardEvent.KEY_UP, edit);
addEventListener(KeyboardEvent.KEY_DOWN, edit);
}
private function edit(event:KeyboardEvent):void
{
if(event.type == KeyboardEvent.KEY_DOWN && event.ctrlKey)
{
t.type = TextFieldType.DYNAMIC; // Dynamic texts cannot be edited. You might be able to remove this line.
t.selectable = false; // If selectable is false, then Ctrl-a won't do anything.
}
else
{
t.type = TextFieldType.INPUT;
t.selectable = true;
}
}
]]>
</mx:Script>
<mx:Canvas id="foo" height="90" width="110" backgroundColor="#FFFFFF" />
</mx:Application>
Non testé, mais vous pourriez peut-être prendre le selectAll
event sur le TextField
et l'empêcher de bouillir, ou effacer la sélection (pas sûr quand l'événement est déclenché).
ce n'est pas pour FLEX3, c'est dans FLASH PLAYER 10 – Tom
Désolé, j'ai supposé de la balise dans votre question que vous utilisiez Flex. Je n'ai pas d'autres idées qui n'ont pas déjà été suggérées. J'espère que vous trouverez une réponse. – igkuk7
J'essaie d'être plus précis maintenant: ma question est pour FLEX; mais l'événement selectAll que vous avez mentionné ne fonctionne pas avec FLEX. Flex utilise Flash 9, mais l'événement SelectAll n'est disponible que dans le flash 10. – Tom
Utilisez la fonction setFocus jumelé avec un écouteur KeyboardEvent:
<xml version="1.0"?>
<!-- menus/SimpleMenuControl.mxml -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" width="800" initialize="init()" >
<mx:TextInput id="nom"/>
<mx:Script>
<![CDATA[
private function init():void
{
addEventListener(KeyboardEvent.KEY_UP, edit);
addEventListener(KeyboardEvent.KEY_DOWN, edit);
}
private function edit(event:KeyboardEvent):void
{
if(event.type == KeyboardEvent.KEY_DOWN && event.ctrlKey) setFocus();
else nom.setFocus();
nom.selectionEndIndex = nom.selectionBeginIndex = nom.text.length;
}
]]>
</mx:Script>
</mx:Application>
Le setFocus signifie que l'objet texte ne sera plus écouter les événements de clavier.
Je ne recommanderais pas d'utiliser la propriété enabled, car elle grise la zone de texte.
setFocus() donne: 1180: Appel à une méthode éventuellement non définie – Tom
if (evt.ctrlKey) stage.focus = this; ne fait rien pour ctrl + – Tom
Désolé. Pour une raison quelconque, seulement la moitié du code est apparu ci-dessus. Je l'ai réparé maintenant. Si vous travaillez dans Flex 3, alors setFocus() fonctionnera sur tout UIComponent, mais il existe une version modifiée ci-dessous qui fonctionnera sur un flash.text.TextField normal. – cwallenpoole
- 1. Ajouter un raccourci tout sélectionner (Ctrl + A) à une liste de diffusion .net?
- 2. Bell sur CTRL-A (WinForms)
- 3. WPF Datagrid Bouton "Sélectionner tout" - "Désélectionner tout"?
- 4. AS3: TextField Focus
- 5. Flex: Tout contrôle pour sélectionner le mois?
- 6. Comment implémenter CTRL-A combinaison de touches en C++
- 7. Prévenir le zoom dans CDHTMLDialog (BHO on IE)
- 8. Ctrl-Delete dans JTextField
- 9. Tout sélectionner sauf le premier caractère d'une chaîne
- 10. Comment prévenir les surcharges?
- 11. Requête SQL pour sélectionner tout sauf la valeur maximale
- 12. VS 2008 - Comportement ctrl-tab
- 13. html5.0 canvas textfield
- 14. XSL sélectionner où l'élément a deux attributs
- 15. Sélectionner tout le texte dans un Winforms Infragistics ComboBox
- 16. Comment sélectionner le texte dans JTextField tout en tabulation
- 17. Tout sélectionner pas dans l'exigence, LINQ to SQL
- 18. DataGridView override haut, gauche entête cellule click (tout sélectionner)
- 19. Comment sélectionner tout le texte dans un Windows Forms TextBox?
- 20. Prévenir SIFR sur certains titres
- 21. Méthode onFocus pour textField
- 22. contrôle de l'orthographe textfield
- 23. javascript pour nouvel onglet (CTRL + T), nouvelle fenêtre (CTRL + N)?
- 24. TextField() Définir la position caret
- 25. TextField() reste parfois BOLDING même si le style HTML a été remis à zéro avec setTextFormat()
- 26. F5 fonctionne, CTRL + F5 ne ...?
- 27. TextField avec clavier dans cocos2d!
- 28. Nokogiri: Sélectionner le contenu entre l'élément A et l'élément B
- 29. Prévenir le comportement par défaut dans la saisie de texte tout en appuyant sur la flèche vers le haut
- 30. TextField() n'affiche pas le début du contenu quand il y a beaucoup de texte
Pouvez-vous ajouter un peu plus d'informations sur ce que vous essayez d'accomplir? Peut-être que TextField n'est pas le bon contrôle pour le travail? – StingyJack
bien, son ctrl parfait Je veux juste supprimer CTRL + A. – Tom
Sonne pour moi comme si tu essaies de faire quelque chose que tu ne devrais pas faire. Pourriez-vous expliquer la raison pour laquelle vous voulez faire cela? – troelskn