什么会导致使用DrawText绘制的文本长度受到限制?

时间:2017-02-28 02:46:52

标签: c winapi combobox

我遇到了一个问题。我似乎无法使用DrawText绘制超过4000个字符的文本字符串。

case WM_PAINT:
     hps = BeginPaint( hwnd, &ps );

     if (pFieldVal)
     {
       int len = strlen(pFieldVal);   /* Variable 'len' only temporary */
     /*if (len > MAX_WIN32_DRAWTEXT)     Code added to protect against */
     /*  len = MAX_WIN32_DRAWTEXT;       disappearing characters!      */

       DrawText( hps,
                 pFieldVal,
                 len,
     (RECT FAR *)&FRect,
                 DT_LEFT | DT_VCENTER | DT_SINGLELINE | DT_NOPREFIX);
     }

如果我使用相同的代码绘制一个较短的字符串,那很好。

限制点似乎约为4094个字符。长度为4094的字符串显示正常,而长度为4095的字符串显示为不可见。

有没有人有什么建议可能导致这个短期限制?

0 个答案:

没有答案