Форум: "Основная";
Текущий архив: 2004.12.12;
Скачать: [xml.tar.bz2];
ВнизDrawGrid Найти похожие ветки
← →
Rand © (2004-11-26 03:14) [0]Как поместить данные(иконки/текст) в сабж. В СтринГрид просто, но только текст ((
← →
ЮЮ © (2004-11-26 03:33) [1]данные(иконки/текст) следует поместить в некую структуру в памяти, а в DrawGrid.OnDrawCell мзвлекать из неё соответсвующие рисуемой ячейке данные и рисовать. Потому он и DrawGrid
← →
Rand © (2004-11-26 04:02) [2]
> ЮЮ © (26.11.04 03:33) [1]
> данные(иконки/текст) следует поместить в некую структуру
> в памяти, а в DrawGrid.OnDrawCell мзвлекать из неё соответсвующие
> рисуемой ячейке данные и рисовать. Потому он и DrawGrid
Так как малевать? Пример есть?
← →
kostan © (2004-11-26 05:25) [3]для примера (разберись):
procedure TF_EditDev.Grid_comDrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState);
var
w_bm,h_bm:integer;
begin
//gdFixed
//timerProverka.enabled:=true;//проверка при любой перерисовке
with Sender as TStringGrid do
begin
DefaultDrawing:=false;
if Arow>0 then
begin
Canvas.Brush.Color :=clsilver;
Canvas.FillRect(Rect);
end;
if (State=[gdfocused,gdSelected]) then
begin
Canvas.Brush.Color :=clwhite;
Canvas.FillRect(Rect);
// canvas.font.Size:=8;
end;
if objects[ACol,ARow] is Tbitmap
then
begin
w_bm:=(objects[ACol,ARow] as tbitmap).width;
h_bm:=(objects[ACol,ARow] as tbitmap).height;
if Grid_com.ColWidths[acol]<w_bm then
Grid_com.ColWidths[acol]:=w_bm;
if Grid_com.RowHeights[arow]<h_bm then
Grid_com.RowHeights[arow]:=h_bm;
if (Grid_com.RowHeights[arow]>h_bm) and (h_bm>30) then
Grid_com.RowHeights[arow]:=h_bm;
Canvas.Draw(Rect.left,Rect.top,(objects[ACol,ARow] as Tbitmap));
exit;
end;
if (Cells[1,ARow]="_VidDev") and (Acol=2)
then
begin
canvas.font.color:=clBlue;
// v_str:=TestDev.GetListval("_VidDev");
v_str:=Cells[2,ARow];
if v_str="DD_" then v_str:="ДИСКРЕТНЫЙ";
if v_str="DA_" then v_str:="АНАЛОГОВЫЙ";
canvas.TextOut(Rect.Left,Rect.Top,v_str);
exit;
end;
if (copy(Grid_com.Cells[1,Arow],1,6)="DAG_FC") and (Acol=2)
then
begin
v_str:=Grid_com.Cells[1,Arow];
//i_ind:=Canvas.Brush.Color;
Canvas.Brush.Color:=testDev.GetListval(v_str);
Canvas.FillRect(Rect);
//Canvas.Brush.Color:=i_ind;
exit;
end;
if ((Cells[1,ARow]="_Ident") or (Cells[1,ARow]="_Imafile")) and
(Acol=2)
then canvas.font.color:=clNavy
else canvas.font.color:=clBlack;
if Arow=0
then
begin
canvas.font.Size:=12;
canvas.font.color:=clNavy;
canvas.font.Style:=[fsBold];
end
else
begin
// canvas.font.Size:=8;
canvas.font.color:=clblack;
// canvas.font.Style:=[];
end;
canvas.TextOut(Rect.Left,Rect.Top,Cells[ACol,ARow]);
{else font.Size:=10;}
DefaultDrawing:=true;
end;
end;
//
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.12.12;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.054 c