| Код | function TForm1.getStringPixelWidth(str:string; const ufont:TFont):integer; var DC : HDC; size : TSize; SaveFont : HFONT; begin result := -1; DC := GetDC(0); SaveFont := SelectObject(DC, uFont.Handle); try if GetTextExtentPoint32(DC, PChar(str), length(str), size) then result := size.cx; finally SelectObject(DC,SaveFont); ReleaseDC(0, DC); end; end;
|
Применение:
| Код | procedure TForm1.Button1Click(Sender: TObject); var w : integer; begin w := getStringPixelWidth(Edit1.Text, Edit1.Font); ShowMessage(inttostr(w)); end;
|
|