안녕하세요. 천리안 프로그래머 포럼 C++Builder 담당자 임펠리테리입니다.
제가 알기로 그리드 컨트롤의 현재 셀 반전은 그리드 컨트롤 자체의 고유속성으로
이것 하나만 안되도록 막을 방법은 없습니다. 물론 그리드의 DefaultDrawing 속성을
false로 세팅해놓으면 반전은 되지 않습니다만, 이 경우에 그리드위엔 아무것도
그려지지 않습니다. 셀을 나눈 선만 나오는 상태죠. 여기서 OnDrawCell 이벤트의
핸들러를 만들어서 fixed영역을 frame3d 프로시저로 그려주고, 그외의 각 셀들을
각 셀의 내용에 따라 그려줘야 합니다. 물론 배경도 흰색으로 칠해준 후에 말이죠.
실제로 해보면 그렇게 어렵진 않습니다. 퍼포먼스가 심각하게 떨어지지도 않구요.
만약 이러한 방법이 정말 싫다면, vcl의 커스텀 그리드 소스중 디폴트 셀 드로우
프로시저인 DrawCell() 소스를 고쳐줘야겠죠.
그럼, 도움되시길 바라면서, 이만...
독립문에서 임펠리테리였습니다.
(cbuilder, skyhi18, cbuilder@thrunet.com)
|