Q&A

  • advstringGrid에서 CheckBox에서 체크를 하고 나서 체크를 해제를 어떻게 합니까??
안녕하세요
수고 많습니다.
아래와 같이 check를 하였습니다.
procedure TFIn.Button2Click(Sender: TObject);  //All Select
begin
for i1:=1 to adv1.RowCount - 1 do
    begin
    if (adv1.Cells[0, i1] <> '')  then
       begin
       adv1.SetCheckBoxState(10,i1,True);
       adv1.floats[11, i1]:=adv1.floats[9, i1];
       end;
    end;
end;

이제는 check를 해제를 하고 싶은데 그것을 찾아봐도 보이지가 않네요
분명이 반대되는 개념이 있을 것인데...
많은 답변을 부탁 드립니다.
procedure TFIn.Button3Click(Sender: TObject);  //All Select
begin
for i1:=1 to adv1.RowCount - 1 do
    begin
    if (adv1.Cells[0, i1] <> '')  then
       begin
       ???????????????????   //무언가를 추가를 하면 될것 같은데....
       adv1.floats[11, i1]:=0;
       end;
    end;
end;

그럼 수고 하세요
3  COMMENTS
  • Profile
    이성민 2004.02.12 19:38
    안녕하세요?

    저같은 경우는 그리드의 타이틀에 체크박스 추가해두고
    이 체크박스로 전체를 토글시켰습니다.

    참고하세요.

    FormCreate
    ---------------------------------------------------
        sgWork.AddCheckBox(0, 0, False, False); // 타이틀에 전체토글용 체크박스 추가

    그리드 ClickCell
    ---------------------------------------------------
    Var
        bTmp: Boolean;
        iRow: Integer;
    Begin
        If ((ARow > 0) And (ACol = 0)) Then Exit;

        If ((ARow = 0) And (ACol = 0)) Then Begin
            sgWork.ToggleCheckBox(0, 0);
            sgWork.GetCheckBoxState(0, 0, bTmp);
            If bTmp Then
                For iRow := 1 To sgWork.RowCount -1 Do
                    sgWork.SetCheckBoxState(0, iRow, True)
            Else
                For iRow := 1 To sgWork.RowCount - 1 Do
                    sgWork.SetCheckBoxState(0, iRow, False);
        End;
    End;


  • Profile
    유동기 2004.02.12 19:06
    check 표시를 할때 쓰셨던 SetCheckBoxState를 똑같이 사용하시면 되는데

    SetCheckBoxState(ACol, ARow, State);

    State가 True이면 표시, False이면 해제입니다.



  • Profile
    Galaxy 2004.02.12 19:11
    답변에 감사 드립니다.
    좋은 하루 되세요