ciao a tutti data una serie di bottoni che richiamano tutti la stessa sub come faccio a visualizzare grazie alla sub su un label (label5) il nome del bottone che ho premuto?come dire label5.text=nome del bottone premuto
ciao binos
ciao a tutti data una serie di bottoni che richiamano tutti la stessa sub come faccio a visualizzare grazie alla sub su un label (label5) il nome del bottone che ho premuto?come dire label5.text=nome del bottone premuto
ciao binos
mi pare semplice
in ogni eventi metti una call ModificaLAbel(nomebottone)
e cioè al posto dinomebottone il nome del pulsante che ha spinto
e una sub con:
private sub modificaLabel(bottone as strin)
bottonespiento(bottone)
end sub
NN vi diro mai chi sono in realta,
tutti i miei 3D sono orfani, non insistete per farmi rispondere ai 3D aperti da me
io vorrei evitare di fare 10 chiamate con 10 nomi diversi vorrei che il nome se lo determinasse da solo
uhm
allora è un po complesso
sinceramente nn mi pè mai capitato questo problema in .net
in vb6 si
ricordo che in vb6 potevi crearti un array di oggetti tipo il button
e come parametro index andavi a vedere quale pulsante è stato spinto
il tutto con una sola riga di codice..in quanto ogni pulsante andava verso una sola routine ->comnad.click(index as integer)
bisgognerebbe cercarla di implementare il tutto in .net
ma nn so se sia ancora possibile una cosa del genere![]()
NN vi diro mai chi sono in realta,
tutti i miei 3D sono orfani, non insistete per farmi rispondere ai 3D aperti da me
Supponendo che nel form hai Button1, Button2 e Button3 scrivi questo evento:
Ciaocodice:Private Sub Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click, Button2.Click, Button3.Click Dim b As Button b = CType(sender, Button) MsgBox("Hai premuto il pulsante " & b.Name) End Sub
Chi non cerca trova.
Posso fare anche il contrario? Ovvero se ho una variabile che contiene il nome del bottone e non ho altre informazioni, riesco in qualche modo a far riferimento ad esso, per esempio ad ottenere la proprietà text?
Si, usando la funzione CallByName:
L'unico limite che ho trovato è che l'oggetto deve essere dichiarato Public e non Friend come avviene di solito in un form. Occorre quindi impostare la proprietà Modifiers del controllo su Public.codice:Dim b As Button b = CallByName(Me, "Button4", CallType.Get, Nothing) MsgBox(b.Text)
Chi non cerca trova.