Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.02.20;
Скачать: CL | DM;

Вниз

Как нарисовать CheckBox в DBGrid   Найти похожие ветки 

 
ik   (2003-02-04 17:16) [0]

Как нарисовать CheckBox в DBGrid, таким образом, чтобы он был активным (т.е. на клик реагировал). Вот мой код, подскажите плз
:

procedure TNewDog.DocGridDrawDataCell(Sender: TObject; const Rect: TRect;
Field: TField; State: TGridDrawState);

var
R: TRect;
btn: UINT;

begin
if Field.FieldName="


 
mate ©   (2003-02-04 17:31) [1]

Я вообще-то не рисовал CheckBox а сделал по другому, просто в нужную ячейку выводил нужный символ:

procedure TForm11.DBGrid1CellClick(Column: TColumn);
begin
if form11.Query1.RecordCount>0 then
begin
if (Column.FieldName="post")or(Column.FieldName="Post") then
begin
form11.DBGrid1.ReadOnly:=false;
form11.DataSource1.Edit;
if form11.Query1.FieldByName("post").Value="#" then
form11.Query1.FieldByName("post").Value:=""
else
form11.Query1.FieldByName("post").Value:="#";
form11.DBGrid1.ReadOnly:=true;
end;
form11.DBGrid1.SelectedIndex:=1;
end;
end;

procedure TForm11.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
if (Column.FieldName="post") then
begin
with form11.DBGrid1.Canvas do
begin
Brush.Color:=clWhite;
FillRect(Rect);
Font.Name:="Wingdings";
Font.Size:=-14;
if (form11.Query1.FieldByName("post").Value="#") then
begin
Font.Color:=clBlack;
TextOut(Rect.Right-3-DBGrid1.Canvas.TextWidth("ь"),Rect.Top+1,"ь");
moveto(rect.Left,rect.Bottom);
lineto(rect.Right,rect.Bottom);
end;
end;
end;




 
Виталий Панасенко   (2003-02-04 17:52) [2]

А лучше не умничать, а использовать готовый DBGridEh из EhLib :-)))



Страницы: 1 вся ветка

Текущий архив: 2003.02.20;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.014 c
8-63685
Юрий
2002-11-08 14:07
2003.02.20
Надпись под углом


3-63594
Step[B.M.]
2003-02-04 11:07
2003.02.20
Поиск ближайшего соответствия через IBTable


3-63536
BorisUK
2003-02-03 13:38
2003.02.20
Распечатать содержимое TMemo


14-63801
UnDISCOvery
2003-02-03 11:44
2003.02.20
MIDAS (DataSnap). Альтернатива Borland Socket Server ?


3-63550
Kurt_
2003-02-03 10:54
2003.02.20
Люди! как в гриде lookup поле сделать таким чтоб ТОЛЬКО из предла