Italian B4A - Multi Module

marco.canta

Active Member
Licensed User
Ciao, normalmente programmo con B4J, ultimamente sto facendo esperienza anche con B4A.

Oltre al Main ho un altro Module "Procedure", da quale oltre a elaborare variabili del Main, vorrei anche poter interagire sui componeti come Label, Button, Serial ... ora se dal modulo "Procedure" prova a scrivere una riga "Mail.Label1.Text" mi da errore, cosa che con B4J funziona.
Nel Main le variabili e i componenti sono dichiarati com "Dim", dal modulo "Procedure" scrivendo main. non rileva alcun componente o variabile.

Mi potete dare un aiuto ?
Grazie Marco
 

LucaMs

Expert
Licensed User
Le view vengono dichiarate solo nella routine Globals; affinché siano accessibili anche agli altri moduli (di qualunque tipo) dovrebbero venire dichiarate nella Process_Globals, cosa che non è possibile fare. Insomma, le view non possono essere oggetti globali (a livello di app).

Puoi però passare una view ad una routine, anche se questa fa parte di un modulo di codice.
 

marco.canta

Active Member
Licensed User
Grazie LucaMs come sempre preciso e chiaro.
Unica cosa ... come faccio a passare una view ad un una routine di un altro modulo ?

Grazie
 

LucaMs

Expert
Licensed User
Semplice. Dall'Activity, mettiamo che tu voglia passare una ImageView:
B4X:
NomeModulo.NomeRoutine(ImageView1)

Nel modulo, ovviamente:
B4X:
Public Sub NomeRoutine(IV as ImageView)
    Log(IV.Width)
End Sub
 
Top