Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - creare molti controlli button
Forum - C# / VB.NET - creare molti controlli button - Pagina 2

Pagine: [ 1 2 ] Precedente | Prossimo
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Segnala al moderatore
Postato alle 16:19
Mercoledė, 05/03/2008
Ovviamente non puoi usare Handles, perchč i pulsanti non esistono in fase di compilazione. Devi invece usare AddHandler che č spiegato sempre nel link sopracitato. Poi nell'evento click converti sender in un Button (o in un Control, come vuoi) e cambi il suo colore.
Codice sorgente - presumibilmente VB.NET

  1. Dim B As Button = DirectCast(sender, Button)
  2. If B.BackgroundColor = Colors.White Then
  3.   B.BackgroundColor = Colors.Black
  4. Else
  5.   B.BackgroundColor = Colors.White
  6. End If


PM Quote
Avatar
John (Ex-Member)
Pro


Messaggi: 191
Iscritto: 18/11/2007

Segnala al moderatore
Postato alle 16:42
Mercoledė, 05/03/2008
guarda, io ci ero riuscito perfettamente ieri sera, poi non ho pių avvisato qui.

Allora, per creare i button:
Codice sorgente - presumibilmente VB.NET

  1. Private Sub genera_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles genera.Click
  2. Dim B As Button
  3. timesx = volteX.Text
  4. timesy = volteY.Text
  5. For J As Byte = 1 To timesy
  6.  For I As Byte = 1 To timesx
  7.   B = New Button
  8.    With B
  9.     'Imposta il nome
  10.     .Name = "Button" & J & I
  11.     'Imposta le dimensioni
  12.     .Size = New Size(15, 15)
  13.     'Imposta le coordinate
  14.     .Location = New Point(I * 15, J * 15)
  15.     'Aggiunge l'evento
  16.      AddHandler .Click, AddressOf Button1_Click
  17.     'Imposta il colore
  18.      .BackColor = Color.White
  19.     End With
  20.   'Lo aggiunge al form
  21.   Me.Controls.Add(B)
  22.  Next
  23. Next
  24. End Sub



Per colorare il bottone:
Codice sorgente - presumibilmente VB.NET

  1. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
  2. If sender.backcolor = Color.White Then
  3.  sender.backcolor = Color.Black
  4. Else
  5.  sender.backcolor = Color.White
  6. End If
  7. End Sub



Per controllare se č nero:
Codice sorgente - presumibilmente VB.NET

  1. For i As Byte = 1 To timesx
  2.  For j As Byte = 1 To timesy
  3.   name = "Button" & j & i
  4.   If DirectCast(Me.Controls.Item(name), Button).BackColor = Color.Black Then
  5.   'č nero, qui lavoro di salvataggio...
  6.   End If
  7.  Next
  8. Next



Grazie ancora!!:k:

PM Quote
Pagine: [ 1 2 ] Precedente | Prossimo