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

Вниз

CheckBox в DBGrid   Найти похожие ветки 

 
Yakudza ©   (2003-05-14 14:52) [0]

Как-то можно вставить CheckBox в DBGrid ?


 
clickmaker ©   (2003-05-14 14:57) [1]

1. Использовать готовый. Например, из EhLib (есть на torry.net)
2. Обрабатывать OnDrawColumnCell, рисовать примерно так:
if Column.Field.AsBoolean then
style := DFCS_CHECKED
else
style := DFCS_BUTTONCHECK;
DrawFrameControl(TBDGrid(Sender).Canvas.Handle, Rect, DFC_BUTTON, style or DFCS_FLAT);


 
Hint ©   (2003-05-14 14:58) [2]

procedure TformColorGrid.DBGridDrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
Var Style : Integer;
Begin
IF { рисуется колонка, в которую мы хотим поместить TCheckBox }
Then IF { значение поля TRUE }
Then Style := DFCS_CHECKED
Else Style := DFCS_BUTTONCHECK;
End;

DrawFrameControl(TDBGrid(Sender).Canvas.Handle, Rect, DFC_BUTTON, Style);
End;

Функция DrawFrameControl рисует на канве в определенном прямоугольнике стандартный windows-control, тип и состояние которого определяется передаваемыми параметрами.
BOOL DrawFrameControl(

HDC hdc, // handle to device context
LPRECT lprc, // pointer to bounding rectangle
UINT uType, // frame-control type
UINT uState // frame-control state
);

Подробнее о том, что еще может рисовать эта функция, смотрите help по Windows API (или MSDN или win32.hlp в поставке Delphi) .
(c)Елена Филиппова


 
p@s ©   (2003-05-15 07:29) [3]

А че вопрос то в потрепатся перенесли?



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

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

Наверх




Память: 0.47 MB
Время: 0.018 c
1-2887
Maksim Realov
2003-05-22 09:49
2003.06.02
Form.OnCreate - когда наступает?


14-3171
vajo
2003-05-15 07:00
2003.06.02
Память для W2000 Advanced Server


1-2865
Maxx
2003-05-22 12:17
2003.06.02
Как поместить ссылку в Label?


1-2959
Nesterovsky
2003-05-18 11:21
2003.06.02
Как в TListView отображать записи разным шрифтом


1-2947
alords
2003-05-20 12:09
2003.06.02
Как узнать завершение другой проги (DOS или Win)