Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2001
    Messaggi
    99

    variabili globali in ActionScript 3.0

    Salve a tutti,
    qualche anima pia mi sa dire come posso definire una variabile globale in ActionScript 3.0?
    Con as2 bastava fare _global.variabile = "globale";
    ln as3 invece come si fa?

    Grazie mille in anticipo...

  2. #2
    Utente di HTML.it L'avatar di negatyve
    Registrato dal
    Feb 2001
    Messaggi
    9,479
    Usa il sistema dei namespace, ad esempio una classe statica che contenga le variabili (se hai capito bene, altrimenti dimmi che ti faccio un esempio).

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2001
    Messaggi
    99
    l'esempio sarebbe ben gradito...

  4. #4
    Utente di HTML.it L'avatar di negatyve
    Registrato dal
    Feb 2001
    Messaggi
    9,479
    Ad esempio, crei una classe di questo tipo:

    codice:
    package
    {
    	public final class TuaClasseConUnNomeSignificativo
    	{
    		public static var tua_variabile:tipo;
    	}
    }
    e dappertutto setti e recuperi il valore con:


    codice:
    TuaClasseConUnNomeSignificativo.tua_variabile = ...;
    trace( TuaClasseConUnNomeSignificativo.tua_variabile );

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2001
    Messaggi
    99
    Intanto grazie per la risposta.
    Ho provato come mi hai suggerito, ma non sembra funzionare.
    Forse la colpa è mia....
    Lo script è così

    codice:
    var fileDescription:String = "File";
    var fileExtension:String = "*.";
    
    function changeHandler(event:Event):void {
    	var fileType = myComboBox.selectedLabel;
    	switch (fileType) {
    		case "Immagine" :
    			fileDescription ="Immagine";
    			fileExtension ="*.jpg; *.jpeg; *.gif; *.png";
    			break;
    		default :
    			isDefault = true;
    			break;
    	}
    }
    var browseFilter:FileFilter = new FileFilter(fileDescription, fileExtension);
    ma i valori di fileDescription e fileExtension restano sempre "File" e "*.".

    Come posso fare?

  6. #6
    Utente di HTML.it L'avatar di negatyve
    Registrato dal
    Feb 2001
    Messaggi
    9,479
    Aspetta, questo problema non c'entra niente con le variabili globali.
    A tutti gli effetti quello che succede nel tuo script è:

    1. definisci le variabili
    2. definisci il changeHandler
    3. crei il filtro

    Il problema è che il changeHandler non è stato chiamato da nessuno tra il punto 1 e il punto 3, e quindi le variabili iniziali conservano il loro valore quando crei il filtro. Quello che devi fare è:

    codice:
    var fileDescription:String = "File";
    var fileExtension:String = "*.";
    var browseFilter:FileFilter;
    function changeHandler(event:Event):void {
    	var fileType = myComboBox.selectedLabel;
    	switch (fileType) {
    		case "Immagine" :
    			fileDescription ="Immagine";
    			fileExtension ="*.jpg; *.jpeg; *.gif; *.png";
    			break;
    		default :
    			isDefault = true;
    			break;
    	}
    	// crei il filtro qui dentro, così sei sicuro che viene creato
    	// quando viene invocato l'handler
    	browseFilter = new FileFilter(fileDescription, fileExtension);
    }

  7. #7
    Utente di HTML.it
    Registrato dal
    Oct 2001
    Messaggi
    99
    Grazie, così funziona!!!!
    Sei stato davvero gentile!!!!

    Già che ci sono vorrei farti un'altra domanda sulla funzione filereference.upload();
    mi faresti un esempio sui parametri che devo passare?

    Grazie ancora

  8. #8
    Utente di HTML.it L'avatar di negatyve
    Registrato dal
    Feb 2001
    Messaggi
    9,479
    In realtà dei parametri ti serve solo il primo, che è l'indirizzo della pagina web che effettua l'upload fisico del file. Se usi php, ad esempio, la pagina web pul contenere:

    Codice PHP:
    <?php      
          $nome_file 
    $_FILES['Filedata']['name'];
          
    $destinazione "/tuo/percorso/" $nome_file;
          
    move_uploaded_file($_FILES['Filedata']['tmp_name'], $destinazione );
          
    chmod$destinazione0777 );
    ?>

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.