Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    keyPress esterno al pulsante

    Salve a tutti,
    devo gestire l'invio di una variabile contenuta in campo input senza un un pulsante flash ma solo con la pressione del tasto invio da tastiera. Ho trovato vari esempi ma tutti associa l'evento on(keyPress = "Enter") ad un pulsante sulla root.. ho provato anche a creare un bottone fittizio e associare l'evento keypress ma non funge lo stesso, probabilemte pechè il campo di input da cui parte la variabile non è sulla root del filmato...

    qualche consiglio??

    Grazie

  2. #2
    Utente di HTML.it L'avatar di koln
    Registrato dal
    Sep 2004
    Messaggi
    388
    nel frame che contiene il campo di input prova a inserire
    codice:
    istanza_campo_input.tabIndex = 1;

  3. #3
    Grazie per il suggerimento ma non funge...

    il campo input è raggiungibile dalla _root nel seguente modo:

    _root.chat_mc.input_txt

    il pulsante che invia il messaggio è un'istanza dell'oggetto push button che richiama direttamente una funzione nella _root in questo modo:

    chat_mc.doMandelo.onPress = function(){

    qui dentro c'è il codice per l'invio dei dati

    }

    Io vorrei che l'invio dei dati venisse effettuato anche premento invio sulla tastiera ma non capisco come gestire il "keyPress = Enter": sembra che il comando venga ignorato

  4. #4
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    per gestire la pressione dei tasti della tastiera puoi usare un oggetto listener legato alla classe Key, una cosa del genere
    codice:
    var kObj:Object = new Object();
    kOjb.onKeyDown = function(){
    	if(Key.isDown(Key.ENTER)){
    		// qui tutte le azioni
    	}
    }
    Key.addListener(kObj);
    il codice và scritto su timeline, dovrebbe essere sufficiente ricopiare nella parte in rosso, il codice che già hai
    NB. ricorda che il pulsante Enter, essendo un pulsante particolare del sistema, potrebbe non funzionare in "Prova filmato", ciò non significa comunque che non funzioni in linea, bisogna solo provare

  5. #5
    Ho messo questo codice nell'unico frame della timeline della _root
    codice:
    ---------------------------------
    var kObj:Object = new Object();
    kOjb.onKeyDown = function(){
    	if(Key.isDown(Key.ENTER)){
    		chat_mc.input_txt.text="baccio";
    	}
    }
    Key.addListener(kObj);
    ---------------------------------
    faccio partire l'swf (dopo averlo creato naturalmente) e mi dovrei ritrovare la scritta "baccio" sul campo testo "chat_mc.input_txt.text" ma in realtà non accade niente..

    ho sbagliato qualche cosa?

  6. #6
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Originariamente inviato da marklenders
    mi dovrei ritrovare la scritta "baccio" sul campo testo "chat_mc.input_txt.text" ma in realtà non accade niente..
    non capisco questa affermazione, la comparsa del testo nel campo input dovrebbe essere legata alla pressione del tasto enter, qui non lo menzioni, dici solo che secondo te dovrebbe essere visualizzato subito, ho sbagliato interpretazione?

    comunque se anche lo clicchi e non funziona allora è probabile che sia come ti ho detto sù, Enter è un tasto del sistema utilizzato per determinate mansioni, per questo "se non viene bloccato" non può essere utilizzato in prova filmato

    nelle opzioni in alto, mi pare la seconda voce dopo file, c'è un sottomenù che dice qualcosa tipo "Blocca tasti funzione" o qualcosa di simile, ti dà la possibilità di usare anche i tasti come SHIFT, ESC, CTRL, ENTER come quando sei sul browser, quindi con un corretto funzionamento del filmato

  7. #7
    Stiamo facendo confusione... ho trovato una soluzione guardando l'help dopo l'esempio che mi hai suggerito.. il problema stava nell'handler della pressione del tasto enter (almeno credo ). Ti posto sotto la suluzione che ho adottato
    codice:
    myListener = new Object();
    myListener.onKeyDown = function () {
      if (Key.getCode()==Key.ENTER){
    	chat_mc.input_txt.text="belva";  
      }
    }
    
    Key.addListener(myListener);
    così funziona alla grande ma non ne avrei tirato fuori le zampe senza il tuo consiglio (dato che non conoscevo gli oggetti listener.. non si finisce mai d'imparare)

    Grazie 10000 per il supporto spero di poter ricambiare

    Ciao

  8. #8
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Originariamente inviato da marklenders
    così funziona alla grande ma non ne avrei tirato fuori le zampe senza il tuo consiglio (dato che non conoscevo gli oggetti listener.. non si finisce mai d'imparare)
    strano che l'altro metodo non ti funzioni, è quello che uso normalmente, magari ho fatto un errore di scrittura comunque ovviamente è valido anche quello che hai postato tu, e poi la cosa più importante è che hai risolto il tuo problema

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.