Главная страница
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.036 c
1-1148632794
wipr
2006-05-26 12:39
2006.07.09
OpenOffice.org можно использовать как OLE-Automation сервер?


6-1133458989
ZeFiR
2005-12-01 20:43
2006.07.09
Вопрос по созданию веб-браузера...


15-1150035209
Любопытствующий
2006-06-11 18:13
2006.07.09
Денежные переводы: почтовый vs электронный


6-1141210521
illmar_kelebrant
2006-03-01 13:55
2006.07.09
Почему UDP - services отказываются работать в DLL?


11-1128946067
BMouradov
2005-10-10 16:07
2006.07.09
Ошибка PBitMap, начиная с 2.13