|
|
|
|
|
Dicas
|
|
Visual Basic (Miscelâneas)
|
|
|
Título da Dica: Limitando o nº de checkbox selecionados
|
|
|
|
Postada em 28/4/2004 por geronimo
Vou dar o exemplo com um array de checkboxes pq é mais fácil mas a função funciona com checkboxes individuais também.
Para testar desenhe um form com um bando de checkboxes (Check1) em control array e cole o código abaixo. MaxSel é o máximo de checkboxes que podem ser selecionados ao mesmo tempo e Marca é uma string que o Tag de cada um dos checkboxes que participem deste esquema devem ter para que a função abaixo possa reconhece-los.
Function RestringeSel(MaxSel As Integer, Marca As String) As Integer
Dim CTL As Control Dim CTR As Integer
RestringeSel = 1 For Each CTL In Me.Controls If TypeOf CTL Is CheckBox Then If CTL.Tag = Marca Then CTR = CTR + CTL.Value End If End If
If CTR > MaxSel Then RestringeSel = 0 Exit For End If Next
End Function
Private Sub Check1_Click(Index As Integer)
If Check1(Index) = 1 Then Check1(Index) = RestringeSel(2, "*")
End Sub
Para funcionar com checkboxes individuais (fora de um control array) cada um deles deve ter a linha acima no seu evento click
Fonte: www.Codex.com.br
|
|
|
|
|