ildany91 (Normal User)
Newbie
Messaggi: 6
Iscritto: 18/04/2016
|
buondì, ho una griglia di label 24x24 già inserite in un array bidimensionale , in alcune delle quali è stato messo del testo in maniera random , volevo trovare il modo di gestire l'evento click (che sia valido per ogni label) in modo che una volta cliccato su una label controlla se nella label c'è testo, se si fa un'azione else niente..
la domanda è come posso rendere generico x tutte le label l'evento click..
|
|
nessuno (Normal User)
Guru^2
Messaggi: 6403
Iscritto: 03/01/2010
|
Utilizza un solo handler del tipo
Codice sorgente - presumibilmente C# / VB.NET |
private void LabAllClick(object sender, EventArgs e)
{
}
|
e aggiungi nel designer per ogni label, ad esempio per la prima
Codice sorgente - presumibilmente C# / VB.NET |
this.label1.Click += new System.EventHandler(this.LabAllClick);
|
Tutti i click saranno inoltrati allo stesso codice e il parametro sender ti dirà quale è stato l'oggetto su cui hai cliccato
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità. |
|
Thejuster (Admin)
Guru^2
Messaggi: 2305
Iscritto: 04/05/2008
|
Aggiungo,
Ricorda che l'oggetto sender deve essere convertito o forzato di essere una label.
Codice sorgente - presumibilmente Plain Text |
((Label)sender).Text = "Ciao";
|
|
|
ildany91 (Normal User)
Newbie
Messaggi: 6
Iscritto: 18/04/2016
|
Grazie mille per la risposta!
P.S. Scusami per non aver specificato il linguaggio... è vb.net!
ho provato ad implementare quanto mi hai scritto, ma senza successo...
non mi riconosce private void,
fra le parentesi garffe cosa dovrei mettere?
|
|
Thejuster (Admin)
Guru^2
Messaggi: 2305
Iscritto: 04/05/2008
|
lol
un void in una Sub?
Quello che ti abbiamo scritto è un esempio di codice in C# non in vb.net
basta che vai qui http://converter.telerik.com/
e converti il codice da C# a vb.net
Abbiamo capito che sei alle prime armi, quindi tranquillo.
devi fare solo attenzione.
Certamente credo che avrai notato per darti errore, significa che non riconosce la sintassi, perché è C# non Vb.net
In secondo luogo un sub non và mai in un'altro sub. va dichiarato esteramente.
Ti consiglierei di darti una bella lettura a questa bella guida
http://www.pierotofy.it/pages/guide/Guida_al_Visual_Basic_ ...
spiega proprio i concetto base e intermedi del vb.net
|
|
ildany91 (Normal User)
Newbie
Messaggi: 6
Iscritto: 18/04/2016
|
Grazie Mille per la pazienza, e soprattutto per la guida che mi hai consigliato!!! XD
ho appena convertito il codice!
nel pomeriggio provo ad implementarlo e faccio sapere!
|
|
ildany91 (Normal User)
Newbie
Messaggi: 6
Iscritto: 18/04/2016
|
non sono riuscito.... mi restituisce 2 errori...
allego uno sreenshot
|
|
torn24 (Normal User)
Pro
Messaggi: 156
Iscritto: 04/01/2008
|
Vedo dalla tua firma che sottovaluti il grande e possente Google, se fai la domanda giusta la risposta la trovi.
Non conoscendo Vb.net, ma avendo fiducia in Google, ho trovato che in vb.net associare un metodo ad un evento si fa in modo diverso che in c#, il convertitore di codice provabile faccia una traduzione letterale non sempre valida.
qui il codice e spiegazioni
https://msdn.microsoft.com/it-it/library/7taxzxka.aspx
AddHandler label.click, AddressOf gestoreEvento
|
|
nessuno (Normal User)
Guru^2
Messaggi: 6403
Iscritto: 03/01/2010
|
Puoi aggiungere direttamente nel codice del click
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
l'altro button
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click, Button2.Click
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità. |
|