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

Вниз

Как в DBGrid запихнуть CheckBox?   Найти похожие ветки 

 
andreik   (2002-03-01 15:03) [0]

Как сделать чтобы при просмотре базы в колонке вместо значений выводился CheckBox?


 
gek   (2002-03-01 15:21) [1]


type
TDbaForm = class(TForm)
Table1: TTable;
.....
DBGrid1: TDBGrid;
DBCheckBox1: TDBCheckBox;
....
procedure DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
procedure DBGrid1ColEnter(Sender: TObject);
procedure DBGrid1KeyPress(Sender: TObject; var Key: Char);
private
{ Private declarations }
end;


procedure TDbaForm.DBGrid1DrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumn;
State: TGridDrawState);
begin
if (gdFocused in State) and
(Column.Field = Table1Senior) then
begin
DBCheckBox1.SetBounds (
Rect.Left + DBGrid1.Left + 1,
Rect.Top + DBGrid1.Top + 1,
Rect.Right - Rect.Left,
Rect.Bottom - Rect.Top);
end;
end;

procedure TDbaForm.DBGrid1ColEnter(Sender: TObject);
begin
if DBGrid1.Columns [DBGrid1.SelectedIndex].
Field = Table1Senior then
DBCheckBox1.Visible := True
else
DBCheckBox1.Visible := False;
end;

procedure TDbaForm.DBGrid1KeyPress(Sender: TObject; var Key: Char);
begin
if DBCheckBox1.Visible and (Ord (Key) > 31) then
begin
Key := #0;
Table1.Edit;
DBCheckBox1.Checked := not
DBCheckBox1.Checked;
DBCheckBox1.Field.AsBoolean :=
DBCheckBox1.Checked;
end;
end;

© Copyright Marco Cantu



 
Кулюкин Олег ©   (2002-03-01 15:57) [2]

http://www.delphikingdom.com/helloworld/dbgridcolor.htm
http://www.citforum.ru/programming/advice/advice04.shtml


 
TSV ©   (2002-03-01 16:04) [3]

Эта фича есть в DBGridEh .


 
Den_   (2002-03-01 21:09) [4]

И еще такая же штучка в Express Quantum Grid Pro - отличная вещь!


 
kimblch   (2002-03-18 06:11) [5]

А можно так. и без всяких левых компонент

procedure TdlgEditPayments.DBGrid1DrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumn;
State: TGridDrawState);
Var Style : Integer;
Begin
IF Column.FieldName="Погашение" Then
Begin
DBGrid1.Canvas.Brush.Color:=clWhite;
DBGrid1.Canvas.FillRect(Rect);

IF DM1.tTempPaymentsPogash.Value=True
Then Style := DFCS_CHECKED
Else Style := DFCS_BUTTONCHECK;
DrawFrameControl(TDBGrid(Sender).Canvas.Handle, Rect, DFC_BUTTON, Style);
end;
End;

procedure TdlgEditPayments.DBGrid1CellClick(Column: TColumn);
begin
DM1.tTempPayments.Edit;
if DBGrid1.Columns[DBGrid1.SelectedIndex].Field = DM1.tTempPaymentsPogash
then begin
if DM1.tTempPaymentsPogash.Value then DM1.tTempPaymentsPogash.Value:=False
else DM1.tTempPaymentsPogash.Value:=True;
DBGrid1.SelectedIndex:=DBGrid1.SelectedIndex-1;
end;
DM1.tTempPayments.Post;
end;


 
Nest ©   (2002-03-18 09:19) [6]

Den_
У тебя этот сам Quantum есть? Он денег не просит?


 
DeNNiss ©   (2002-03-18 10:39) [7]

> Nest ©
Есть, 8 мег весит и денег не просит.


 
Den_   (2002-03-18 10:40) [8]

> Nest ©
Есть, 8 мег весит и денег не просит.



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

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

Наверх




Память: 0.48 MB
Время: 0.012 c
3-22542
Cyber
2002-03-15 07:48
2002.04.08
Backup в Interbase


3-22564
Barmutik
2002-03-15 12:06
2002.04.08
Помогите устранить ошибку !


4-22873
Turalyon
2002-02-05 13:41
2002.04.08
Запускаемые приложения


1-22764
DimaIv
2002-03-25 17:00
2002.04.08
Как в Word документе сделать найти и заменить на


3-22589
Malder
2002-03-15 16:25
2002.04.08
НЕсовершенство Interbase ?