Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.05.2009, 16:23   #1
Neeter
Форумчанин
 
Аватар для Neeter
 
Регистрация: 22.02.2009
Сообщений: 875
По умолчанию Ширина символа

Как узнать ширину символа в ячейке DBGrid'а?
Ну, или не в ячейке, а в заголовке столбца.
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство.
Neeter вне форума Ответить с цитированием
Старый 09.05.2009, 16:54   #2
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,526
По умолчанию

canvas.drawtext + F1 See Also

верно будет canvas.textout или textwidth
программа — запись алгоритма на языке понятном транслятору

Последний раз редактировалось evg_m; 09.05.2009 в 17:02.
evg_m на форуме Ответить с цитированием
Старый 09.05.2009, 17:13   #3
Скандербег
Форумчанин
 
Регистрация: 04.04.2009
Сообщений: 438
По умолчанию

Код:
  S := 'A'; //символ, ширину которого надо узнать
  R := Rect(0, 0, 0, 10); //инициализация переменной - обязательное условие (неважно какими значениями)
  DrawText(StringGrid1.Canvas.Handle, PChar(S), -1, R, DT_CALCRECT);
В R.Right возвращается ширина символа (в общем случае строки "S").
R : TRect;
Надо помнить, что шрифт, который применяется по умолчанию не моноширинный и ширина символов в нем различная.
Скандербег вне форума Ответить с цитированием
Старый 10.05.2009, 07:48   #4
Kotofff
Участник клуба
 
Аватар для Kotofff
 
Регистрация: 11.01.2009
Сообщений: 1,917
По умолчанию

Зачем так сложно ?
Код:
DBGrid.Canvas.TextWidth('Ф')
как намекнул evg_m - ширина буквы "Ф", например, исходя их установок шрифта в гриде эта ширина будет меняться соответственно. можно указать целую строку - будет ее ширина в соответствии с установленным шрифтом.
"Заряженному танку в дуло не смотрят" @Dekmer in WoT

Последний раз редактировалось Kotofff; 10.05.2009 в 07:52.
Kotofff вне форума Ответить с цитированием
Старый 10.05.2009, 09:40   #5
Neeter
Форумчанин
 
Аватар для Neeter
 
Регистрация: 22.02.2009
Сообщений: 875
По умолчанию

Да я уже понял)
Всем спасибо
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство.
Neeter вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ширина формы Glaznoy Общие вопросы Delphi 1 03.05.2009 12:38
ширина столбцов! Karinka БД в Delphi 10 28.04.2009 12:00
Ширина полей DBGrid XATAB БД в Delphi 7 28.02.2009 10:54
длина и ширина символа user_jasser Win Api 4 08.12.2008 13:31
DBGrid ширина колонки Pinya БД в Delphi 7 07.08.2008 09:22