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

Вниз

Аналог OnDrawCell в DBGrid   Найти похожие ветки 

 
KIR ©   (2002-04-29 12:21) [0]

Народ, такой вопрос: Требуется в ячейке выводить текст из поля типа String и, если он (текст) не помещается в одну строку увеличивать ширину ячейки и выводить его (текст) в несколько строк. В StringGrid я делаю так:

procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol,
ARow: Integer; Rect: TRect; State: TGridDrawState);
var
al: UINT;
s: string;
hi: integer;
R: TRect;
begin
S:=StringGrid1.Cells[ACol,ARow];
al:=DT_LEFT or DT_VCENTER or DT_END_ELLIPSIS or DT_NOPREFIX or DT_WORDBREAK;
R := Rect;
R.left:=R.Left+2;
R.Top:=R.Top+2;
R.Right:=Rect.Right-2;
hi:=DrawTextEx(StringGrid1.Canvas.Handle, PChar(s), Length(s), R, al or DT_CALCRECT, nil);
if StringGrid1.RowHeights[ARow] < hi then
StringGrid1.RowHeights[ARow]:=hi+6;
DrawTextEx(StringGrid1.Canvas.Handle,Pchar(s),-1,R,al,nil);
end;

А как это делается в DBGrid?


 
Johnmen ©   (2002-04-29 12:26) [1]

Если имеется в виду высота (а не ширина :)), то
Разве что заранее определить максимальную необходимую высоту ячеек...


 
jonik pegas ©   (2002-04-29 14:09) [2]

Переопределить DefaultRowНеight.Правда изменится высота всех строк что не есть хорошо.



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

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

Наверх




Память: 0.47 MB
Время: 0.012 c
1-88521
pusrg
2002-05-15 22:13
2002.05.27
Св-во Data для TListItem


1-88501
Лана Розанова
2002-05-13 21:52
2002.05.27
В продолжении темы...


1-88405
Student_
2002-05-15 11:17
2002.05.27
Простой вопрос


1-88425
Dr.Aleck
2002-05-16 21:52
2002.05.27
Как при помощи Делфи6 поменять ф-ию в чужой ДЛЛ-ке?


1-88440
Alibaba
2002-05-17 12:53
2002.05.27
Как раcшарить диск?