代码之家  ›  专栏  ›  技术社区  ›  Alexander Rafferty

查找文本宽度

  •  0
  • Alexander Rafferty  · 技术社区  · 14 年前

    我正在为如下控件设置字体:

    HDC hdc = GetDC(NULL);
    int lfHeight = -MulDiv(szFont, GetDeviceCaps(hdc, LOGPIXELSY), 72);
    ReleaseDC(NULL, hdc);
    HFONT font = CreateFont(lfHeight, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, Font.c_str());
    SendMessage(hwnd,WM_SETFONT,(WPARAM)font,0);
    

    控件是静态的。对于给定的字符串,如何在静态中查找文本的宽度?

    2 回复  |  直到 14 年前
        1
  •  2
  •   Mark Ransom    14 年前

    使用 GetTextExtentPoint32 . 您需要先在DC中选择字体。

        2
  •  0
  •   mox    14 年前

    cdc::getTextExtent()和cdc::getOutputTextExtent()应该会有所帮助。