Autore Topic: Definizione Globale di una variabile [Risolto]  (Letto 1340 volte)

Offline wattstorm

  • Gamberetto
  • *
  • Post: 9
    • Mostra profilo
Definizione Globale di una variabile [Risolto]
« il: 10 Febbraio 2013, 21:54:28 »
Salve e un grazie anticipatamente
Come faccio a condividere una variabile su tutti i form che creo ?
ho letto il comando Public ma non funziona es:
Form1
Public vedo as string
vedo="ciao"
Form2
la variabile vedo non esiste mi dice che non è definita ?

In Visual Basic c'era il comando type
es:
type pippo
 nome as string *10
 cognome as string *10
end type

Esiste un comando simile in gambass3 ?
« Ultima modifica: 11 Febbraio 2013, 01:21:53 da wattstorm »

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.266
  • Ne mors quidem nos iunget
    • Mostra profilo
Re: Definizione Globale di una variabile
« Risposta #1 il: 10 Febbraio 2013, 23:09:06 »
Nel codice relativo al Form2 dovrai così richiamare la variabile globale presente nel Form1:

(facciamo finta che vuoi stampare in console la stringa contenuta nella variabile globale "vedo")
Codice: gambas [Seleziona]

   Print Form1.vedo



Esempio pratico con due Form: il principale FMain ed il secondario Form2:

(codice del Form principale, FMain)
Codice: gambas [Seleziona]

Public vedo As String

Public Sub Form_Open()

    vedo = "ciao, wattstorm !"

' Vado a far mostrare il Form secondario:
     Form2.Show

End



Nel codice del Form secondario Form2:
Codice: gambas [Seleziona]

Public Sub form_Open()
  
  Print FMain.vedo
  
End




Se non tu non volessi utilizzare una variabile globale, potresti, ovviamente, passare al Form secondario il valore della variabile stringa attraverso un parametro.... ma questa è un'altra storia.
« Ultima modifica: 16 Maggio 2013, 20:19:58 da vuott »
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.266
  • Ne mors quidem nos iunget
    • Mostra profilo
Re: Definizione Globale di una variabile
« Risposta #2 il: 11 Febbraio 2013, 01:10:53 »

In Visual Basic c'era il comando type
es:
type pippo
 nome as string *10
 cognome as string *10
end type

Esiste un comando simile in gambas3 ?

In Gambas 3 esiste la Struttura.
Ti rinvio alla nostra WIKI:
   https://www.gambas-it.org/wiki/index.php/Strutture:_dichiarazione_ed_uso
« Ultima modifica: 26 Aprile 2022, 20:59:58 da vuott »
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline fsurfing

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.484
    • Mostra profilo
Re: Definizione Globale di una variabile [Risolto]
« Risposta #3 il: 11 Febbraio 2013, 10:13:42 »
 per usare le variabili globali  controlla di aver impostato a "si " le opzioni:

i simboli dei moduli sono public
i controlli dei form sono public

in proprieta>opzioni

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.266
  • Ne mors quidem nos iunget
    • Mostra profilo
Re: Definizione Globale di una variabile [Risolto]
« Risposta #4 il: 11 Febbraio 2013, 16:10:55 »
per usare le variabili globali  controlla di aver impostato a "si " le opzioni:

i simboli dei moduli sono public
i controlli dei form sono public

in proprieta>opzioni

Anch'io pensavo così, ma stranamente a me funziona perfettamente anche senza impostare come Pubbliche quelle opzioni.  :-\
...e mi funziona così anche se, al posto del Form con la sua Classe, uso un semplice modulo,
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline fsurfing

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.484
    • Mostra profilo
Re: Definizione Globale di una variabile [Risolto]
« Risposta #5 il: 11 Febbraio 2013, 16:29:55 »
a me invece non va

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.266
  • Ne mors quidem nos iunget
    • Mostra profilo
Re: Definizione Globale di una variabile [Risolto]
« Risposta #6 il: 11 Febbraio 2013, 16:32:11 »
a me invece non va

Mistero dell'Universo !   :'(

Ad ogni modo, voglio precisare che quanto detto da fsurfing è la regola. Quindi lui ha detto una cosa che è stata sempre giusta.

Ora... non so perché a me funziona comunque.  :-\
« Ultima modifica: 11 Febbraio 2013, 16:34:05 da vuott »
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.151
  • Tonno verde
    • Mostra profilo
Re: Definizione Globale di una variabile [Risolto]
« Risposta #7 il: 01 Maggio 2015, 15:58:39 »
Siccome quello che accade a vuott succede anche a me e cioè non devo impostare i simboli dei moduli a Si ecc. ecc. vorrei sapere se si è capito il perché.
Immagino che questo succeda solo in Ubuntu e sue derivate, oppure...
 :ciao:
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro