| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Neuer User Registriert seit: Sep 2008
Beiträge: 8
| Fokus auf ein TextInput bei CREATION_COMPLETE setzen
Hi, ich habe ein Popup mit einem Texteingabefeld, das beim Öffnen des Popups sofort den Fokus bekommen soll. Zwei Wege, die vielversprechend aussahen, habe ich bisher versucht: Das ist das Textfeld: Code: <mx:TextInput id="txtInput" focusIn="trace('Fokus bekommen!');" /> Code: <mx:TitleWindow
title=""
layout="horizontal"
xmlns:mx="http://www.adobe.com/2006/mxml"
creationComplete="eventListener(event)"> Code: private function eventListener(event:Event):void {
switch(event.type) {
case FlexEvent.CREATION_COMPLETE:
trace("Setze Fokus");
focusManager.showFocusIndicator = true;
focusManager.setFocus(this.txtInput);
trace("Fokus gesetzt auf " + Object(focusManager.getFocus()).name);
break;
}
} Code: Setze Fokus Fokus bekommen! Fokus gesetzt auf txtInput Auch folgende Implementierung (im Web zusammengesucht) bringt nicht das gewünschte Ergebnis, obwohl die Logausgabe die gleiche ist: Code: this.txtInput.setFocus(); this.txtInput.setSelection(0,0); this.txtInput.drawFocus(true); Code: <mx:Button click="focusManager.setFocus(this.txtInput);" label="Fokus setzen" /> |
| | |
| | #2 (permalink) |
| Perverted Hermit Registriert seit: Mar 2004 Ort: Delmenhorst
Beiträge: 12.147
|
Sonst checke mal: ActionScript:
__________________ http://icodeapps.net | Meet me at the Flex user group Hamburg talking about CoffeeScript |
| | |
| | #3 (permalink) |
| Neuer User Registriert seit: Sep 2008
Beiträge: 8
|
"There's more than one way to do it" ![]() Code: if (stage) {
trace("Schon auf der Bühne, setze Fokus");
stage.focus = this.txtInput;
} Code: Schon auf der Bühne, setze Fokus Fokus bekommen! Fokus gesetzt auf txtInput Gab es nicht mal einen Weg, die GUI wie nach einem Mausklick zu "refreshen"? Hilft das hier vielleicht was? |
| | |
| | #4 (permalink) |
| Perverted Hermit Registriert seit: Mar 2004 Ort: Delmenhorst
Beiträge: 12.147
| Code: <?xml version="1.0" encoding="utf-8"?>
<mx:Application backgroundColor="0xFFFFFF"
creationComplete="eventListener(event)"
layout="vertical"
xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:Script>
<![CDATA[
import mx.events.FlexEvent;
private function eventListener(event:Event):void
{
switch(event.type)
{
case FlexEvent.CREATION_COMPLETE:
focusManager.setFocus(textInput);
break;
case FocusEvent.FOCUS_IN:
trace(event.currentTarget, event.target);
break;
}
}
]]>
</mx:Script>
<mx:TextInput focusEnabled="true"
focusIn="eventListener(event)"
id="textInput" />
</mx:Application>
__________________ http://icodeapps.net | Meet me at the Flex user group Hamburg talking about CoffeeScript |
| | |
| | #5 (permalink) |
| Neuer User Registriert seit: Sep 2008
Beiträge: 8
|
Das Problem scheint bei der Verwendung meiner Komponente als Popup zu liegen. Ich lasse mir mal eine Meldung ausgeben, wenn das Eingabefeld den Fokus verliert: Code: <mx:TextInput id="txtInput" focusIn="trace('Fokus bekommen!');" focusOut="trace('Fokus verloren!');"/> ![]() So verwende ich die Komponente von aussen: Code: var validationWindow:ValidationWindow = ValidationWindow(
PopUpManager.createPopUp(this, ValidationWindow, true));
PopUpManager.centerPopUp(validationWindow); |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |