Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.15;
Скачать: [xml.tar.bz2];




Вниз

Форматирование ячеек в TStringGrid. 


Muzzy   (2002-04-02 12:33) [0]

Уважаемые мастера, помогите реализовать сабж.
В ячейки StringGrid заносятся названия пунктов, но сами названия очень длинные и чтение затруднено. Задача: в фиксированную длину столбца поместить строку, и если эта строка выходит за пределы ячейки автоматически увеличить ширину ячейки и разместить остальное строкой ниже в этой же ячейке (нечто похожее на «перенос по словам” в Excel) и позиционировать все это в верхний левый угол. Есть ли подобное свойство у StringGrid или надо делать ручками. И если ручками, то как?



MBo   (2002-04-02 13:04) [1]

что-нибудь в этом роде
procedure TForm1.sg1DrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState);
var r:trect;
begin
if sg1.canvas.textwidth(sg1.cells[Acol,Arow])>sg1.ColWidths[Acol] then begin
r:=rect;
DrawText(sg1.canvas.handle,pchar(sg1.cells[Acol,Arow]),length(sg1.cells[Acol,Arow]),r, DT_WordBreak+DT_CalcRect);
r.right:=rect.right;
sg1.canvas.fillrect(r);
sg1.Rowheights[aRow]:=r.bottom-r.top+3;
DrawText(sg1.canvas.handle,pchar(sg1.cells[Acol,Arow]),length(sg1.cells[Acol,Arow]), r, DT_WordBreak);
end;
end;




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.15;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.71 MB
Время: 0.048 c
3-46234           Immortal              2002-03-24 13:07  2002.04.15  
Table.Filter


1-46418           Nestor                2002-04-02 18:04  2002.04.15  
InstallShield


1-46422           Valentain             2002-04-02 19:30  2002.04.15  
RichEdit1 -> RichEdit2 без потери качества...


3-46276           Stranger              2002-03-25 16:01  2002.04.15  
Хранение файлов различных типов в полях БД MS SQL Server


7-46523           EskimOS               2002-01-21 10:38  2002.04.15  
Работа с большим файлом...