Fórum Stringlist Checklistbox #308795
11/01/2006
0
Pego os itens que estao no checklist e jogo no stringlist... sem problema...
limpo o checklistbox...
Agora, alimento novamente o checklist... só que nenhum dos itens do mesmo estao selecionado nessa nova fase, o que vai alimentar ele sao os itens do stringlist.
podem me dizer como ?
ou seja, com os novos itens que foram jogados no checklist (uma nova listagem...), dentro do mesmo tem os itens que foram jogados no stringlist, porém na nova listagem esse itens nao estao marcados... gostaria de marcar no checklist esse itens que estao dentro do stringlist
é facil, porem to com tanta coisa na cabeca que nao to conseguindo penssar em como resolver isso.
podem me ajudar ?
Technos
Curtir tópico
+ 0Posts
11/01/2006
Bruno Belchior
var Cont, Check: Smallint; begin with FStngLstAlimentada do begin for Cont := 0 to ChckLstBxAlimentador.Items.Count-1 do begin if ChckLstBxAlimentador.Checked[Cont] then Check := 1 else Check := 0; AddObject(ChckLstBxAlimentador.Items[Cont], TObject(Check)); end; end; end;
Para Alimentar o CheckListBox:
var Cont, Check: Smallint; begin with ChckLstBxAlimentador do begin for Cont := 0 to FStngLstAlimentada.Count-1 do begin Check := Integer(Objects[Cont]); Items.Add(FStngLstAlimentada[Cont]); Checked[Cont] := Check = 1; end; end; end;
Gostei + 0
12/01/2006
Technos
Vou postar como eu fiz, seguindo a logica que voce passou (so pra salientar, era assim que eu ja tava fazendo):
Alimentando o stringlist:
for i := 0 to CheckListBox1.Items.Count - 1 do
if CheckListBox1.Checked[i] then
SelecaoProdutos.add(checklistbox1.items.strings[i]);
limpo o checklist
CheckListBox1.Clear ;
Alimento novamente o checklist:
RecarregaChecklist;
Usando a sua logica, tento recolocar os itens do stringlist no checklist, porem ele nao marca todos e quando marca, marca errado:
for i := 0 to SelecaoProdutos.Count - 1 do
begin
Check := integer(i);
CheckListBox1.Items.Add(SelecaoProdutos[i]);
CheckListBox1.Checked[i] := Check = 1;
end;
Dá uma olha ae cara
Gostei + 0
12/01/2006
Bruno Belchior
var Cont: Smallint; begin with ChckLstBx do begin for Cont := 0 to FStrLst.Count - 1 do begin Items.Add(Strings[Cont]); Checked[Cont] := True; end; end; end;
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)