Flex 3: Come posso modificare il Cursore del Mouse quando si passa il mouse su un Testo di Input?

In Flex, per impostazione predefinita, quando si sposta il mouse su Input di Testo, il cursore del mouse è cambiato per i bar croce. Come posso cambiare questo cursore in modo che il normale puntatore del mouse cursore è dimostrato piuttosto che i bar croce?

aggiornamento: Beh, sembra che questo processo è molto semplice in Flex 4, secondo questo post del blog: http://blog.flexexamples.com/2008/11/03/setting-mouse-cursors-in-flash-player-10/

Dal momento che mi sono bloccato con Flex 3 per il momento, come posso fare qualcosa di simile?

update2: Inoltre, questa domanda è un po ‘ simile a questa domanda:
Evitando il cambiamento del cursore su campi di testo dinamico in Flash CS3

Però, sto usando lo standard di Flex Builder, non Flash CS3.

OriginaleL’autore DyreSchlock | 2009-04-22

5 Replies
  1. 7

    Giusto per chiarire – il MouseCursor e Mouse classi esistono anche in Flex 3 in flash 10.
    In modo che si può collegare al MOUSE_OVER e MOUSE_OUT eventi:

    elem.addEventListener(MouseEvent.MOUSE_OVER, function(event:Event):void {
        Mouse.cursor = MouseCursor.BUTTON;
    });
    
    elem.addEventListener(MouseEvent.MOUSE_OUT, function(event:Event):void {
        Mouse.cursor = MouseCursor.ARROW;
    });
    Nel pacchetto che fare MouseCursor e Mouse esiste? I link non portano da nessuna parte più utile.

    OriginaleL’autore tm_lv

  2. 2

    È necessario utilizzare il CursorManager:

    import mx.managers.CursorManager;
    
    protected function textMouseOverHandler(event:Event):void
    {
        CursorManager.setCursor(yourCursor, yourPriority, xOffset, yOffset);
        //Rest of your handler
    }
    
    protected function textMouseOutHandler(event:Event):void
    {
        //be sure to set the cursor back here
    }
    il setCursor metodo accetta un oggetto di Classe però. Come posso trovare l’Oggetto di Classe per il cursore su qualsiasi sistema operativo, l’utente è?
    Dovrete creare la freccia immagine se si desidera che questa funzionalità. Purtroppo, Flex 3 passa il Cursore di gestione per il sistema se non cursore viene definito. E ‘ il sistema che visualizza l’ho cursore…non Flex.
    hmmm. strano. Così come fa il sistema a sapere quando cambiare il cursore? C’è un modo per cambiare l’individuazione di un campo di testo in modo da non sapere cambiare?

    OriginaleL’autore Justin Niessner

  3. 0

    Si potrebbe utilizzare un HBOX con un Etichetta invece di un componente TextInput. Il sistema non cambia il cursore quando il mouse è sopra l’Etichetta. Se si desidera che il testo sia modificabile dall’utente, è necessario fare un po ‘ di lavoro.

    public class MyTextInput extends HBox
    {
    public function  MyTextInput()
    {
       super();
       var label:Label = new Label();
       label.text="some text";
       addChild(label);
       addEventListener(MouseEvent.CLICK, editProperties, true);
    }
    private function editProperties(event:MouseEvent)
    {
      //do something to allow the user to edit the text e.g. PopupManager.createPopup
    }
    }

    OriginaleL’autore Phil C

  4. -1

    c’è anche un altro modo, impostando buttonMode proprietà vero per ogni componente che si desidera. questo porta il cursore del mouse invece di cursore di testo.

    Ci sono tre proprietà richieste. Oscar, la risposta.

    OriginaleL’autore

Lascia un commento