Differenze tra le versioni di "Attivare un Componente dinamicamente da codice"

Da Gambas-it.org - Wikipedia.
Riga 4: Riga 4:
  
 
   
 
   
E' possibile, però, attivare un Componente anche ''successivamente'', in modo dinamico, da codice. Per poter fare ciò, si dovrà fare uso del metodo ''.Load()'' della proprietà ''.Component'' del metodo ''.Class'' della Classe ''Object'':
+
E' possibile, però, attivare un Componente anche ''successivamente'', in modo ''dinamico'', da codice. Per poter fare ciò, si dovrà fare uso del metodo ''.Load()'' della proprietà ''.Component'':
   Object.Class(''oggetto'').Component.Load("''gb.nome_del_componente''")
+
   Component.Load("''gb.nome_del_componente''")
  
  
Riga 28: Riga 28:
 
  <FONT color=gray>' ''Si procede ad attivare il componente Gambas "gb.desktop", per poter utilizzare la funzione "Desktop.Open()".''
 
  <FONT color=gray>' ''Si procede ad attivare il componente Gambas "gb.desktop", per poter utilizzare la funzione "Desktop.Open()".''
 
  ' ''Inoltre si verificherà il suo nome, e se esso è stato effettivamente caricato:''</font>
 
  ' ''Inoltre si verificherà il suo nome, e se esso è stato effettivamente caricato:''</font>
     Print "Componente \""; <FONT color=#B22222>Object.Class(Form).Component.Load("gb.desktop")</font>.Name; "\" caricato: "; Object.Class(Form).Component.IsLoaded("gb.desktop")
+
     Print "Componente \""; <FONT color=#B22222>Component.Load("gb.desktop")</font>.Name; "\" caricato: "; Component.IsLoaded("gb.desktop")
 
   
 
   
 
  <FONT color=gray>' ''Quindi si effettua il tentativo di apertura di un file qualsiasi:''</font>
 
  <FONT color=gray>' ''Quindi si effettua il tentativo di apertura di un file qualsiasi:''</font>

Versione delle 16:50, 16 dic 2015

Come è noto, un Componente di Gambas viene di norma attivato dall'IDE seguendo la seguente procedura:

Progetto-->Proprietà-->Componenti

e quindi nell'apposita finestra si attiva il Componente prescelto cliccando sul suo riferimento.


E' possibile, però, attivare un Componente anche successivamente, in modo dinamico, da codice. Per poter fare ciò, si dovrà fare uso del metodo .Load() della proprietà .Component:

  Component.Load("gb.nome_del_componente")


Si faccia, infatti, questo esempio, nel quale si dovrà far aprire un file con il suo programma di default mediante il metodo .Open() della Classe Desktop. L'applicativo nell'esempio non ha attivato il componente gb.desktop, indispensabile per poter utilizzare il predetto comando: Desktop.Open("/percorso/del/file/da/aprire") previsto dall'applicativo medesimo.

Si proverà a verificare cosa succede cliccando prima sul tasto Button1, e successivamente sul tasto Button2:

Public Sub Form_Open()

End


Public Sub Button1_Click()

' Si effettua il tentativo di apertura di un file qualsiasi senza alcun tipo di attivazione del componente "gb.desktop":
   Desktop.Open("/percorso/del/file/da/aprire")

End


Public Sub Button2_Click()

' Si procede ad attivare il componente Gambas "gb.desktop", per poter utilizzare la funzione "Desktop.Open()".
' Inoltre si verificherà il suo nome, e se esso è stato effettivamente caricato:
   Print "Componente \""; Component.Load("gb.desktop").Name; "\" caricato: "; Component.IsLoaded("gb.desktop")

' Quindi si effettua il tentativo di apertura di un file qualsiasi:
   Desktop.Open("/percorso/del/file/da/aprire")

End