Dica para uso de CheckListBox

18/06/2008

1

Olá galera fiz uma função aqui para agilizar o funcionamento do CheckListbox. Da para usar um PopupMenu como na imagem abaixo.

Para funcionar basta chamar a função assim: TrataChecklist(CheckListBox1,0);

0 - Seleciona todos
1 - Inverte seleção
2 - Tira todas as seleções
3 - Seleciona todos acima
4 - Seleciona todos abaixo

[img:8db9108923]http://img149.imageshack.us/img149/1557/teefj7.jpg[/img:8db9108923]

Função:

Procedure.TrataChecklist(componente:TCheckListBox;acao:integer);
var
  i,x:integer;
begin
  case acao of
    0:  //seleciona todos
      begin
        for i:=0 to componente.items.Count-1 do
          componente.Checked[i] := true;
      end;
    1: //inverte seleção
      begin
        for i:=0 to componente.items.Count-1 do
          begin
            if componente.Checked[i] = true then
              componente.Checked[i] := false
            else
              componente.Checked[i] := true;
          end;
      end;
    2: //desceleciona todos
      begin
        for i:=0 to componente.items.Count-1 do
          componente.Checked[i] := false;
      end;
    3: // seleciona todos acima
      begin
        x := componente.ItemIndex;
        for i:=0 to x do
          componente.Checked[i] := true;
      end;
    4: //seleciona todos abaixo
      begin
        x := componente.ItemIndex;
        for i:=x to componente.items.Count-1 do
          componente.Checked[i] := true;
      end;
  end;
end;


Pode ser uma função meio idiota mas me quebrou um bom galho.

Valeu


Responder

Posts

18/06/2008

Mmoreira

Boa colega,
Maravilha sua iniciativa de postar o codigo sem ninguem ter pedido.

Parabens!


Responder
×
+1 DevUP
Acesso diário, +1 DevUP
Parabéns, você está investindo na sua carreira