if qry_BODD.FieldByName('ANCPT').AsFloat < 0 then
if (Sender as TDBGrid).Focused and (State = [gdSelected]) then begin
(Sender as TDBGrid).Canvas.Brush.Color := clFuchsia;
end else begin
(Sender as TDBGrid).Canvas.Brush.Color := clYellow;
(Sender as TDBGrid).Canvas.Font.Color := clBlack;
end;
(Sender as TDBGrid).DefaultDrawColumnCell(Rect,DataCol,Column,State);
저도 님처럼 한 레코드 선택시 색깔 설정은 했는데요...
아래글에도 썼는데여 code = 2인 레코드를 선택하면
code=2인 경우의 모든 레코드의 색깔을 같게 설정할려고 하거든요...
ㅡ.ㅜ
2를 선택하면 2인경우의 레코드 2개가 같은 색깔을 가지구요..
4를 선택시 4인 경우의 레코드 3개를 동시에 같은 색깔로 변경할려구요...
procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
(Sender as TDBGrid).Canvas.Font.Color := clBlack;
if qry.FieldByName('test').AsInteger = test then begin
(Sender as TDBGrid).Canvas.Brush.Color := clYellow;
end else begin
(Sender as TDBGrid).Canvas.Brush.Color := clWhite;
end;
(Sender as TDBGrid).DefaultDrawColumnCell(Rect,DataCol,Column,State);
end;
procedure TForm1.FormShow(Sender: TObject);
begin
test := -1;
end;
procedure TForm1.DBGrid1CellClick(Column: TColumn);
begin
test := qry['test'];
DBGrid1.Refresh;
end;
0 ......... 1 ......... 2 ......... 2 3 3 4 4 4 5 5 그리드에 뿌려진 내용이 위와 같구요... 0 선택시 색깔설정하구요... 2 선택시 2로 써진 두 레코드 모두 같은 색으로 설정돼게 하고싶은데.. 이게 가능한가여? 아시는분 방법좀 ㅠ....
연기훈
•
2004.02.25 18:27
DBGrid에서 값을 비교하여 뿌려질려면...
DB내용을 비교해야 합니다.
전에 제가 했던 프로젝트에서 ...
레이디메이앙
•
2004.02.25 20:31
저도 님처럼 한 레코드 선택시 색깔 설정은 했는데요...
아래글에도 썼는데여 code = 2인 레코드를 선택하...
연기훈
•
2004.02.25 23:27
제가 테스트로 짜본건데.. 도움이 될런지..
그럼 즐프하세요
var
Form1: TForm1;
&nbs...
연기훈
•
2004.02.25 23:30
option 에서 dgediting은 false로
dgrowselet 는 true로 하고 했습니다.
DB내용을 비교해야 합니다.
전에 제가 했던 프로젝트에서 비슷한 내용의 소스입니다.
참고 하세요...
if qry_BODD.FieldByName('ANCPT').AsFloat < 0 then
if (Sender as TDBGrid).Focused and (State = [gdSelected]) then begin
(Sender as TDBGrid).Canvas.Brush.Color := clFuchsia;
end else begin
(Sender as TDBGrid).Canvas.Brush.Color := clYellow;
(Sender as TDBGrid).Canvas.Font.Color := clBlack;
end;
(Sender as TDBGrid).DefaultDrawColumnCell(Rect,DataCol,Column,State);