Вниз
Скачать: CL | DM;

выравнивание текста в StringGrid   Найти похожие ветки 

 
appendix ©   (2004-09-15 21:00) [0]

Мастера, подскажите как вы делаете выравнивание в ячейках по правому краю?

Пытался сделать через
StringGrid1.canvas.TextOut(Rect.Right-length(StringGrid1.Cells[ACol,ARow])*ширина символа,Rect.Top,StringGrid1.Cells[ACol,ARow]);

Но возникла проблема из-за разной ширины символов(например запятая и буква щ)получается криво.


 
begin...end ©   (2004-09-15 21:09) [1]

Во-первых, для определения ширины текста строки в ячейке нужно использовать Canvas.TextWidth(...), а не length(StringGrid1.Cells[ACol,ARow])*ширина символа.

Во-вторых, ИМХО, для сабжа лучше использовать API-функцию DrawText():

DrawText(StringGridName.Canvas.Handle, Text, -1, Rect, DT_RIGHT),

где Text - текст в ячейке; Rect - прямоугольник ячейки.


 
Defunct ©   (2004-09-15 21:28) [2]

Canvas.TextRect()


 
GanibalLector ©   (2004-09-15 21:41) [3]

2 appendix
Дядька begin...end ©  тебе правильно ответил,через DrawText лучше и удобней.А вообще,статьи никто на этом сайте не отменял,млин...
Читайте сЭр=> http://www.delphimaster.ru/articles/stringgrid/index.html



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.02 c
14-1095012992
Piter
2004-09-12 22:16
2004.10.03
Перехват событий мыши


14-1094389442
начинающий
2004-09-05 17:04
2004.10.03
Delphi vs. C++


3-1093942389
Zilog
2004-08-31 12:53
2004.10.03
Не удаляется запись из базы


4-1093595479
SolDen
2004-08-27 12:31
2004.10.03
Высота панели задач


4-1093116755
dRake
2004-08-21 23:32
2004.10.03
Редактор ресурсов




   Наверх