Q&A

  • DBGrid에서 전체선택시 반전
DBGrid에 자료가 10건이 있으면 Action을 취했을 경우

모든자료가 반전이 되도록 할려면 어떻게 해야 하나요



급해요

1  COMMENTS
  • Profile
    신인재 1999.07.13 02:25
    음...저두 잘 몰라서 직접 해봤거든요...

    2가지 방법이 있는데 좀 어설프군요...



    첫번째는 캔버스를 이용하는 방법입니다..

    ondrawdatacell 이벤트 핸들러에다 아래의 코드를 넣고

    refresh메소드를 호출하는 거죠..



    dbgrid1.canvas.brush.color := clnavy;

    dbgrid1.canvas.font.color := clwhite;

    dbgrid1.canvas.fillrect(rect);

    dbgrid1.canvas.textout(rect.x, rect.y, field.asstring);



    이경우 좀 문제가 많이 있더라구요....반전의 반전은 부러쉬의컬러와

    폰트의 컬러를 변경시켜주심 되겠고...



    두번째 방법은 dgmultiselect 옵션을 true로 주고



    dbgrid1.SelectedRows를 이용하는 방법입니다.



    버튼의 클릭이벤트에 다음의 코드를 넣고



    table1.first

    while not(table1.eof) do

    table1.next;

    table1.first;



    테이블의 afterscroll이벤트핸들러에 다음의 코딩을 하는겁니다.



    dbgrid1.SelectedRows.CurrentRowSelected := true;





    음냐 이렇게 해 보았는데 두가지 방법 모두 좀 어설프군요...

    엥...뭔가 깔삼한 방법이 있을꺼 같은뎅....쩝



    정 께서 말씀하시기를...

    > DBGrid에 자료가 10건이 있으면 Action을 취했을 경우

    > 모든자료가 반전이 되도록 할려면 어떻게 해야 하나요

    >

    > 급해요