![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
DBGrid и картинки.... [D7, IB6.x]
Tiny © (2002-12-04 08:31:00)Помогите PLZ!
Каким образом можно вставить в ячейку DBGrid"а иконку? Т.е. есть в таблице поле "Статус" - и в зависимости от значения нужно вставить определенную картинку...
snv-soft (2002-12-05 05:55:00) [1]procedure TForm_Main.DBGrid_DealDrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumnEh;
State: TGridDrawState);
var
Im1: TBitmap;
begin
if Column.FieldName = "LOTE_STATUS" then
begin
with DBGrid_Deal.Canvas do
begin
im1:=TBitmap.Create;
Brush.Color:=$00FDFDE3;
FillRect(Rect);
case DMod.Query_Bids.FieldByName("LOTE_STATUS").AsInteger of
0: Icons_DbGridBids.GetBitmap(2,Im1);
1: Icons_DbGridBids.GetBitmap(0,Im1);
2..3: Icons_DbGridBids.GetBitmap(1,Im1);
end;
Draw(Round((Rect.Left+Rect.Right - Im1.Width)/2),Rect.Top+1,Im1);
end;
end;
end;
Иконки находятся в TImageList
BorisUK (2002-12-04 14:10:00) [2]Проще как?
Johnmen (2002-12-04 13:48:00) [3]В RxDBGrid идеология та же, но делается проще...
BorisUK (2002-12-04 13:23:00) [4]Севостьянов Игорь ©
объясни чем RX тут помочь может?
Я его юзаю, но всеравно пришлось делать в Гриде
Im : TBitMap;
....
Im1:=TBitmap.Create;
ImageList1.GetBitMap(13,im1);
DBGrid.Canvas.Draw(round((Rect.Left+Rect.Right-Im1.Width)/2),Rect.Top,Im1)
...
Может зря старался и там это проще делается?
Севостьянов Игорь (2002-12-04 11:55:00) [5]Или воспользоваться RX Lib
Карелин Артем (2002-12-04 11:42:00) [6]Наталия © (04.12.02 08:59)
Ну а сайт стало быть DelphiKingdom.com Хорошая статейка.
Prooksius (2002-12-04 10:15:00) [7]DBGridEh это может.
http://www.farpost.com/personal/dmitryb/RUS/downloads.htm
Наталия (2002-12-04 08:59:00) [8]Рисовать на канве. Событие DrawColumnCell или drawDataCell.
На королевстве есть статья "Разноцветный грид"