随笔 - 2146  文章 - 97 评论 - 11767 trackbacks - 253

//声明:
GetCharWidth(
  DC: HDC;                   {设备环境句柄}
  FirstChar, LastChar: UINT; {范围内的第一个和最后一个字符值}
  const Widths               {接受每个字符宽度值的整型数组}
): BOOL;

GetCharWidth32(
  DC: HDC;                   {设备环境句柄}
  FirstChar, LastChar: UINT; {范围内的第一个和最后一个字符值}
  const Widths               {接受每个字符宽度值的整型数组}
): BOOL;

{GetCharWidth32 专用于 Win32 系统, 在这里和 GetCharWidth 没有区别}

//获取当前字体所有大写字母的宽度(用 Memo 显示) procedure TForm1.FormCreate(Sender: TObject); var arr: array[0..25] of Integer; i: Integer; begin GetCharWidth(Canvas.Handle, Ord('A'), Ord('Z'), arr); //GetCharWidth32(Canvas.Handle, Ord('A'), Ord('Z'), arr); {也可} Memo1.Clear; for i := 0 to 25 do begin Memo1.Lines.Add(Char(Ord('A')+i) + #9 + IntToStr(arr[i])); end; end;
//效果图:

posted on 2008-02-09 11:55  万一  阅读(...)  评论(...编辑  收藏