Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12

Discussione: [MX] combobox

  1. #1
    Utente di HTML.it L'avatar di colors
    Registrato dal
    Dec 2000
    Messaggi
    1,113

    [MX] COMBOBOX come si usano ????

    Ciao ragazzi devo realizzare 2 combo box in MX, ma non so da che parte iniziare non le ho mai usate

    In particolare vorrei che ogni scelta della combobox mi permettesse di andare ad uno specifico fotogramma della timeline:

    ossia seleziono la voce di menu 1 e vado al frame 10, seleziono la voce 2 e vado al frame 20 ecc.

    Penso che per iniziare dovrei usare i 'componenti' messi a disposizione da MX e poi ??? come si configurano tutte quelle voci :

    editable
    labels
    dat
    row countchange handler

    ????? aiuto sono disperato

  2. #2
    porta il comboBox sullo stage, gli dai come nome di istanza lista e sul frame scrivi:

    codice:
    vociMenu = new Array("Pippo", "Arutro", "Nicola");
    for (i=0; i<vociMenu.length; i++) {
    	lista.addItem(vociMenu[i], i);
    }
    myObject = new Object();
    myObject.myHandler = function(component) {
    	trace(component.getSelectedItem().label);
    };
    lista.setChangeHandler("myHandler", myObject);
    quindi in vociMenu inserisci le voci del tuo menu, e al posto di:
    trace(component.getSelectedItem().label);
    inserisci le azioni che vuoi far compiere al momento in cui viene selezionata una voce.

    regalami un oggi da favola...e il domani bhe!?non mi importa se tu 6 con me! ©Ily

  3. #3
    Utente di HTML.it L'avatar di colors
    Registrato dal
    Dec 2000
    Messaggi
    1,113
    ok ho messo il component sullo stage, l'ho chiamato lista e ho associato lo script al frame, ma non riesco a capire cosa e come inserire al posto di al posto di:
    trace(component.getSelectedItem().label);

    cioè ora se voglio che cliccando su pippo la timeline vada al frame 10 e se clicco Nicola va al 20 cosa scrivo ????

  4. #4
    Utente di HTML.it L'avatar di colors
    Registrato dal
    Dec 2000
    Messaggi
    1,113

    Mi spiego meglio.

    Ok ragazzi il mio progetto è questo:

    Ho creato 2 combox aggiornabili in questo modo:

    1^ combobox con nomeistanza: principale

    dove in label ho messo : scegli; immagini, moderatori, birra


    2^ combobox con nomeistanza: seconda


    nel frame ho messo il seguente script:


    immaginiArray = new Array("bmp", "jpg", "gif", "tiff");
    moderatoriArray = new Array("negatyve", "saibal", "ZofM");
    birraArray = new Array("chiara", "rossa", "scura");
    function setSubCombo() {
    secondo.removeAll();
    var subArray = eval(principale.getSelectedItem().data);
    for (var i = 0; i<subArray.length; i++) {
    secondo.addItem(subArray[i], subArray[i]);
    }
    }



    Ho anche aggiunto un pulsante (vai) cui ho applicato:

    on(release){
    spostamento = seconda.getValue();
    gotoAndPlay(spostamento);
    }


    La cosa funziona così:

    Quando scegli sul primo menu una voce (immagini, moderatori o birra) il secondo menu si aggiorna di conseguenza con le varie voci disponibili.

    Ora l'obiettivo per cui Vi chiedo aiuto è questo:

    cosa metto per far si che schiacciando il pulsante vai, la timeline scorra fino ad un punto preciso della timeline???

    credo che dovrei far passare dei valori alla combo 'seconda' oltre che le label, e poi con il pulsante raccogliere il valore e farlo eseguire.
    Ma come faccio a passare anche i valori oltre alle label????

    Cosa scrivo ad esempio

    immaginiArray = new Array("bmp", "jpg", "gif", "tiff");

    lo trasformo in
    immaginiArray = new Array("bmp",10, "jpg",20, "gif",30, "tiff",40);

    ma non funziona ! cosa sbaglio ???



    E' tutta la notte che studio i risultati della ricerca sul forum e ho trovato questo aiuto del grande Negatyve:

    combo.setChangeHandler("cambia");
    label = ("pippo", "pluto", "paperino");
    function cambia(){
    var num = combo.getSelectedIndex()
    _root.gotoAndPlay(label[num]);
    }



    che però non mi funziona (perchè non so ne dove metterlo ne come usarlo nel mio esempio)....e fa un caldooo


    aiuto

  5. #5
    Se ho capito bene vuoi che l'utente una volta selezionata la voce del menu deve cliccare su invio, quindi in base alla voce selezionata andare ad un certo frame?? Giusto?
    Se è così scrivi questo sul frame in cui sta il tuo comboBox:

    codice:
    vociMenu = new Array("Pippo", "Arutro", "Nicola");
    sel1 = new Array("Pippo1","Pippo2","Pippo3");
    sel2 = new Array("Arturo1","Arturo2","Arturo3");
    sel3 = new Array("Nicola1","Nicola2","Nicola3");
    dataMenu = new Array("sel1","sel2","sel3");
    for (i=0; i<vociMenu.length; i++) {
    	comboBox.addItem(vociMenu[i], dataMenu[i]);
    }
    pulsante.onRelease = function(){
    	nomeArray = eval(comboBox.getSelectedItem().data);
    	combo2.removeAll();
    	for (i=0; i<nomeArray.length; i++) {
    		combo2.addItem(nomeArray[i], i);
    	}
    }
    dove pulsante è il nome di istanza del pulsante vai;
    comboBox è il nome di istanza del tuo combo;
    combo2 è il nome di istanza del secondo comboBox;
    vociMenu è un array delle voci che visualizzi nel menu;
    dataMenu è l'array che contiene il nome dell'array associato ad ogni voce del menu principale (ossia se clicchi sulla seconda voce del menu principale (vociMenu) ti viene selezionata la seconda voce dell'array dataMenu (sel2) quindi il secondo array che andrà a riempire il secondo comboBox).

    esempio

    regalami un oggi da favola...e il domani bhe!?non mi importa se tu 6 con me! ©Ily

  6. #6
    Utente di HTML.it L'avatar di colors
    Registrato dal
    Dec 2000
    Messaggi
    1,113
    Ciao Yassassin,
    dunque è quasi perfetto!!!! :bubu:
    Nel senso che prima scegli dal primo combo, contemporaneamente cambia di conseguenza il secondo combo, quindi dai il 'vai' che fa andare in un punto della timeline con il valore preso dalla seconda combobox.

    Nell'esempio che mi hai fatto invece schiacci il pulsante subito dopo aver aver agito sul primo combobox.

    Come lo modifico il Tuo già ottimo script ???

    (scusa ma è dalle 3.00 di stanotte che smanetto e mi si stanno incrociando gli occhi...)

  7. #7
    codice:
    vociMenu = new Array("Pippo", "Arutro", "Nicola");
    labelMenu = new Array("sel1","sel2","sel3");
    
    //**************************\\
    sel1 = new Array("dataSel1","Pippo1","Pippo2","Pippo3");
    dataSel1 = new Array("frame1","frame2","frame3");
    sel2 = new Array("dataSel2","Arturo1","Arturo2","Arturo3");
    dataSel2 = new Array("frame4","frame5","frame6");
    sel3 = new Array("dataSel3","Nicola1","Nicola2","Nicola3");
    dataSel3 = new Array("frame7","frame8","frame9");
    //**************************\\
    
    for (i=0; i<vociMenu.length; i++) {
    	comboBox.addItem(vociMenu[i], labelMenu[i]);
    }
    
    //**************************\\
    
    myObject = new Object();
    myObject.myHandler = function(component) {
    	nomeArray = eval(comboBox.getSelectedItem().data);
    	dataArray = eval(nomeArray[0]);
    	combo2.removeAll();
    	for (i=1; i<nomeArray.length; i++) {
    		combo2.addItem(nomeArray[i], dataArray[i-1]);
    	}
    };
    comboBox.setChangeHandler("myHandler", myObject);
    
    //**************************\\
    
    pulsante.onRelease = function(){
    	gotoAndStop(combo2.getSelectedItem().data);
    }
    codice:
    sel3 = new Array("dataSel3","Nicola1","Nicola2","Nicola3");
    come vedi, al primo posto ho messo il nome dell'array associato che contiene i nomi delle etichette che flash dovrà raggiungere quando viene selezionata una voce dell'array sel3.

    esempio

    regalami un oggi da favola...e il domani bhe!?non mi importa se tu 6 con me! ©Ily

  8. #8
    Utente di HTML.it L'avatar di colors
    Registrato dal
    Dec 2000
    Messaggi
    1,113
    Ciao Yassassin continuo a riprovare lo script che hai postato ma sta cavolo di timeline non si sposta cosa sbaglio. In più non riesco più a visualizzare le pagine con tuoi esempi

    aiuto ti prego

    ma al pulsante cosa devo associare al momento non ho associato niente

  9. #9
    qui trovi il .fla completo

    al pulsante non devi associare nulla. Gli devi dare solo un nome di istanza (io gli ho dato pulsante). Poi è lo script che ti ho postato che fa tutto il resto.

    Credo che con il .fla davanti riesci a capire meglio la situazione

    se vuoi ulteriori spiegazioni non esitare

    regalami un oggi da favola...e il domani bhe!?non mi importa se tu 6 con me! ©Ily

  10. #10
    Utente di HTML.it L'avatar di colors
    Registrato dal
    Dec 2000
    Messaggi
    1,113
    Ho capito il mio errore ma mi vergogno a postarlo.....

    vabbè lo dico: non ho scritto i nomi dei frame target (frame1 frame2 ecc.), ho posizionato il keyframe direttamente sul frame1 frame2 ecc.

    aaaargh

    faccio penitenza da solo (beh c'è anche da dire che sono già 6 ore che lavoro e sono solo le 9.00 del mattino...)


    Yassassin...SEI GRANDE!!!! :sexpulp: :metallica :sexpulp: :metallica



    colors

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.