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

Вниз

Как узнать длину записи в пикселах написи в визуальном компоненте   Найти похожие ветки 

 
novill ©   (2006-06-19 16:51) [0]

Есть строка и есть  Font, которым она написана.


 
Игорь Шевченко ©   (2006-06-19 17:09) [1]

function GetTextWidthInPixels(AText: string; AControl: TControl): integer;
var
 propInfo: PPropInfo;
 thisFont: TFont;
begin
 Result := 0;

 propInfo := GetPropInfo(AControl.ClassInfo, "Font");

 if propInfo <> nil then begin
   thisFont := TFont(GetObjectProp(AControl, "Font"));

   if Assigned(thisFont) then
     with TControlCanvas.Create do
       try
         Control := AControl;
         Font.Assign(thisFont);
         Result  := TextWidth(AText);
       finally
         Free;
       end;
 end;
end;


 
begin...end ©   (2006-06-19 17:10) [2]

Контекст тоже нужен будет. Тогда GetTextExtentPoint32 (или TCanvas.TextWidth).


 
novill ©   (2006-06-19 17:32) [3]

Спасибо.



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

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

Наверх




Память: 0.47 MB
Время: 0.029 c
15-1149586462
pavel_guzhanov
2006-06-06 13:34
2006.07.09
Возникла необходимость ознакомиться с Oracle


2-1150964585
D@Nger
2006-06-22 12:23
2006.07.09
Не получается установить RxLib


1-1148542464
inew
2006-05-25 11:34
2006.07.09
Компонет indy10. Ограничение на размер файла.


1-1148911803
.ruslan
2006-05-29 18:10
2006.07.09
...поверх всех приложений


2-1150979987
*delete*
2006-06-22 16:39
2006.07.09
как проверить создание папки