Italian Accorciare Molte Sub

Albert1996

Member
Licensed User
Longtime User
è possibile accorciare tutte queste sub?

<CODE>
Sub Textbox1aora1_GotFocus
SIP(True)
Panel1.Top=0
End Sub

Sub Textbox2aora1_GotFocus
SIP(True)
Panel1.Top=-40
End Sub

Sub Textbox3aora1_GotFocus
SIP(True)
Panel1.Top=-80
End Sub

Sub Textbox4aora1_GotFocus
SIP(True)
Panel1.Top=-120
End Sub

Sub Textbox5aora1_GotFocus
SIP(True)
Panel1.Top=-160
End Sub

Sub Textbox6aora1_GotFocus
SIP(True)
Panel1.Top=-200
End Sub

Sub Textbox1aora2_GotFocus
SIP(True)
Panel2.Top=0
End Sub

Sub Textbox2aora2_GotFocus
SIP(True)
Panel2.Top=-40
End Sub

Sub Textbox3aora2_GotFocus
SIP(True)
Panel2.Top=-80
End Sub

Sub Textbox4aora2_GotFocus
SIP(True)
Panel2.Top=-120
End Sub

Sub Textbox5aora2_GotFocus
SIP(True)
Panel2.Top=-160
End Sub

Sub Textbox6aora2_GotFocus
SIP(True)
Panel2.Top=-200
End Sub

Sub Textbox1aora3_GotFocus
SIP(True)
Panel3.Top=0
End Sub

Sub Textbox2aora3_GotFocus
SIP(True)
Panel3.Top=-40
End Sub

Sub Textbox3aora3_GotFocus
SIP(True)
Panel3.Top=-80
End Sub

Sub Textbox4aora3_GotFocus
SIP(True)
Panel3.Top=-120
End Sub

Sub Textbox5aora3_GotFocus
SIP(True)
Panel3.Top=-160
End Sub

Sub Textbox6aora3_GotFocus
SIP(True)
Panel3.Top=-200
End Sub

Sub Textbox1aora4_GotFocus
SIP(True)
Panel4.Top=0
End Sub

Sub Textbox2aora4_GotFocus
SIP(True)
Panel4.Top=-40
End Sub

Sub Textbox3aora4_GotFocus
SIP(True)
Panel4.Top=-80
End Sub

Sub Textbox4aora4_GotFocus
SIP(True)
Panel4.Top=-120
End Sub

Sub Textbox5aora4_GotFocus
SIP(True)
Panel4.Top=-160
End Sub

Sub Textbox6aora4_GotFocus
SIP(True)
Panel4.Top=-200
End Sub

Sub Textbox1aora5_GotFocus
SIP(True)
Panel5.Top=0
End Sub

Sub Textbox2aora5_GotFocus
SIP(True)
Panel5.Top=-40
End Sub

Sub Textbox3aora5_GotFocus
SIP(True)
Panel5.Top=-80
End Sub

Sub Textbox4aora5_GotFocus
SIP(True)
Panel5.Top=-120
End Sub

Sub Textbox5aora5_GotFocus
SIP(True)
Panel5.Top=-160
End Sub

Sub Textbox6aora5_GotFocus
SIP(True)
Panel5.Top=-200
End Sub

Sub Textbox1aora6_GotFocus
SIP(True)
Panel6.Top=0
End Sub

Sub Textbox2aora6_GotFocus
SIP(True)
Panel6.Top=-40
End Sub

Sub Textbox3aora6_GotFocus
SIP(True)
Panel6.Top=-80
End Sub

Sub Textbox4aora6_GotFocus
SIP(True)
Panel6.Top=-120
End Sub

Sub Textbox5aora6_GotFocus
SIP(True)
Panel6.Top=-160
End Sub

Sub Textbox6aora6_GotFocus
SIP(True)
Panel6.Top=-200
End Sub

Sub Textbox1aora7_GotFocus
SIP(True)
Panel7.Top=0
End Sub

Sub Textbox2aora7_GotFocus
SIP(True)
Panel7.Top=-40
End Sub

Sub Textbox3aora7_GotFocus
SIP(True)
Panel7.Top=-80
End Sub

Sub Textbox4aora7_GotFocus
SIP(True)
Panel7.Top=-120
End Sub

Sub Textbox5aora7_GotFocus
SIP(True)
Panel7.Top=-160
End Sub

Sub Textbox6aora7_GotFocus
SIP(True)
Panel7.Top=-200
End Sub
</CODE>
 

LordZenzo

Well-Known Member
Licensed User
Longtime User
certo, fai cosi

a tutte le textbox cambia l' eventname mettendo lo stesso nome a tutte

poi crei una sub con eventname_gotfocus

e inserisci un codice simile
Sub TextboxEvent_GotFocus
Dim testobox As TextBox
dim quale as int
testobox=sender
quale=testobox.tag
select case quale
case 1
codice del primo
case 2
codice del secondo
......
end select
codice comune
end sub

se poi crei una matrice a due dimensioni del tipo
matrice(numerotext,(numeropanel*1000)+posizionetop)
e dentro la tag delle textbox inserisci il numerotext
il codice si riduce cosi

Sub TextboxEvent_GotFocus
Dim testobox As TextBox
dim quale,quanto as int
testobox=sender
quanto=-(testobox.tag mod 1000)
quale=(testobx-quanto)/1000
select case quale
case 1
panel1.to=quanto
case 2
panel2.top=quanto
......
end select
codice comune
end sub
 
Last edited:

Albert1996

Member
Licensed User
Longtime User
Me lo potresti spiegare più semplicemente?

E Se lo volessi applicare al Click di un'immagine?
 

Jost aus Soest

Active Member
Licensed User
Longtime User
Last edited:

Albert1996

Member
Licensed User
Longtime User
Ho scritto questo ma nn funziona!
Help Me!

Sub TextBox1aora_GotFocus
Dim TextBox1aOra as TextBox
Dim quale as Int
textBox1aora=sender
quale=textbox1aora.tag
Select quale
Case 1
SIP(True)
Panel1.Top=0
Case 2
SIP(True)
Panel1.Top=-40
Case 3
...
Case 4
...
End Select
End Sub
 

genesi

Active Member
Licensed User
Longtime User
Ho scritto questo ma nn funziona!
Help Me!

Consiglio, invito quando hai un problema comunica sempre tutte le infoirmazioni che possono aiutare gli altri ad aiutarti es. messagi di errore.
Hai valorizzato la proprietà Tag?
P.S.
controlla la tastiera hai il tasto "o" che non funziona
 

Albert1996

Member
Licensed User
Longtime User
Non ho avuto nessun messaggio di errore.
Ma come si valorizza la proprietà tag?
 
D

Deleted member 103

Guest
Mi sà proprio che state confondendo tra Basic4ppc e Basic4Android.

La Textbox in Basic4ppc non ha la proprietà Tag, quindi la funzione TextBox1aora_GotFocus dovrebbe essere più o meno così:
B4X:
Sub TextBox1aora_GotFocus
   Dim quale As String
   
   quale=Sender.name
   
   Select quale
   Case "Textbox1aora1"
      Sip(True)
      Panel1.Top=0
   Case "Textbox2aora1"
      Sip(True)
      Panel1.Top=-40
   Case "Textbox3aora1"
      ...
   Case "Textbox4aora1"
      ...
   End Select
End Sub


Ciao,
Filippo
 
Cookies are required to use this site. You must accept them to continue using the site. Learn more…