Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Выравнивание текста по центру в TDBGridEh при отрисовке вручную / 4 сообщений из 4, страница 1 из 1
15.12.2003, 17:51
    #32353064
Elena Gadjieva
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выравнивание текста по центру в TDBGridEh при отрисовке вручную
Подскажите, как лучше при отрисовке ячейки в TDBGridEh задать отступ (MyLeft) слева, чтобы текст выравнивался по центру
grd.Canvas.TextOut(MyLeft, MyTop, Column.Field.AsString)
Возникла идея посчитать по такой формуле:
MyLeft:=round(column.Width/2-(MyFunc(Column.Field.AsString)/2)), где MyFunc- какая-нибудь функция, которая вычислит длину значения, вписываемого в поле в Pixel-ах. Но как это сделать - не знаю :(

Знатоки,что посоветуете?

Заранее спасибо.
...
Рейтинг: 0 / 0
15.12.2003, 18:34
    #32353137
Nick74
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выравнивание текста по центру в TDBGridEh при отрисовке вручную
У любого Canvas есть для ентого полезные функции TextWidth, TextHeight и иже с ними :)
...
Рейтинг: 0 / 0
16.12.2003, 10:02
    #32353469
Elena Gadjieva
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выравнивание текста по центру в TDBGridEh при отрисовке вручную
Спасибо Nick74 :)
Я пока Delphi только осваиваю, поэтому, со свойствами сталкиваюсь по мере необходимости. Теперь буду знать!
...
Рейтинг: 0 / 0
16.12.2003, 13:05
    #32353780
ZrenBy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выравнивание текста по центру в TDBGridEh при отрисовке вручную
Код: plaintext
1.
Windows.DrawText(MyGrid.Canvas.Handle,LPSTR(S),- 1 ,Rect,DT_CENTER or DT_SINGLELINE);
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Выравнивание текста по центру в TDBGridEh при отрисовке вручную / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]