procedure TForm1.CheckBox13Click(Sender: TObject);
var
i, nTmp: integer;
s1: string;
Item: TListItem;
begin
if CheckBox13.Checked = true then ListView9.SelectAll
else
for i := ListView9.Items.Count - 1 downto 0 do
begin
if ListView9.Items[i].Checked = true then
ListView9.Items[i].Checked := false;
end;
end;
//我这句哪里不对,就是要实现打钩全选,去钩清除全选
现在能去除,问题去除后就再不能全选了
var
i, nTmp: integer;
s1: string;
Item: TListItem;
begin
if CheckBox13.Checked = true then ListView9.SelectAll
else
for i := ListView9.Items.Count - 1 downto 0 do
begin
if ListView9.Items[i].Checked = true then
ListView9.Items[i].Checked := false;
end;
end;
//我这句哪里不对,就是要实现打钩全选,去钩清除全选
现在能去除,问题去除后就再不能全选了
if CheckBox13.Checked = false;
var
i, nTmp: integer;
s1: string;
Item: TListItem;
begin
for i := ListView9.Items.Count - 1 downto 0 do
begin
ListView9.Items[i].Checked := CheckBox13.Checked;
end;
end;
var
i: integer;
begin
for i := 0 to ListView9.Items.Count - 1 do
ListView9.Items[i].Checked := CheckBox13.Checked;
end;
var
i : integer;
begin
if cb_test.Checked = true then
begin
for i := 0 to lv_test.Items.Count -1 do
begin
lv_test.Items[i].Checked :=true;
end;
end
else
begin
for i:=0 to lv_test.Items.Count -1 do
begin
lv_test.Items[i].Checked := false;
end;
end;
end;
楼上的全部都不对,完全没有考虑到用户可能只勾选某个项目之后。
以上代码请楼主参考,LV_TEST是ListView控件,CB_test是CheckBox控件。