WinAPI:EditBox角未在矩形内正确渲染

WinAPI:EditBox角未在矩形内正确渲染,winapi,rendering,Winapi,Rendering,尝试使用文本框重新渲染窗口时,文本框的角未正确渲染。 它只是白色的,没有角落。创建文本框后,一切都正常。使用invalidate(NULL,NULL,true)重新招标后,框已离开,只有文本在其中,直到我将鼠标移到框上 使用CreateWindowEx创建编辑,参数为WS_EX_CLIENTEDGE和WS_CHILD | WS_VISIBLE | ES_AUTOHSCROLL 更新:刚发现在矩形外渲染时问题已经解决 示例:加载Mono-D()附带的WinAPI示例项目并向WM_PAINT添加以下

尝试使用文本框重新渲染窗口时,文本框的角未正确渲染。 它只是白色的,没有角落。创建文本框后,一切都正常。使用
invalidate(NULL,NULL,true)重新招标后,框已离开,只有文本在其中,直到我将鼠标移到框上

使用CreateWindowEx创建编辑,参数为
WS_EX_CLIENTEDGE
WS_CHILD | WS_VISIBLE | ES_AUTOHSCROLL

更新:刚发现在矩形外渲染时问题已经解决

示例:加载Mono-D()附带的WinAPI示例项目并向WM_PAINT添加以下代码时:
RoundRect(dc,0,0,300,300,1,1)和以下代码添加到按钮单击处理程序(带有IDC\u BTNCLICK的处理程序)


出现问题。

您的父窗口是否包含
WS\u CLIPCHILDREN
标志?请发布一条消息,使您的问题完整、可回答,并且对未来的访问者更有价值。我想我也遇到了类似的问题,或许可以帮到您?请仔细检查我的问题,以确保我正确理解了你的帖子。看看这些图片,看看这是否是你遇到的问题。谢谢。在编辑控件中使用
WS\u CLIPCHILDREN
窗口样式的基本原理是什么?创建编辑控件父窗口的代码在哪里?不要忽略这两个方面的文档。
hWnd
参数有以下建议:“不建议将此参数设置为
NULL
。”IInspectable是正确的:设置hWnd时,不会发生错误。非常感谢你的帮助!
                try
                {
                    HMENU h = CreateWindowExW(WS_EX_CLIENTEDGE, "edit".toUTF16z, "".toUTF16z, WS_CHILD | WS_VISIBLE | ES_AUTOHSCROLL | WS_CLIPCHILDREN, 100, 100, 100, 100, hWnd, cast(HMENU)100, GetModuleHandleA(null), null);
                    HFONT font = CreateFontW(15, 0, 0, 0, FW_NORMAL, 0, 0, 0, CP_UTF8, OUT_DEFAULT_PRECIS, CLIP_DEFAULT_PRECIS, DEFAULT_QUALITY, DEFAULT_PITCH | FF_DONTCARE, ("Tahoma").toUTF16z);
                    SendMessageA(h, WM_SETFONT, cast(int)font, 0);
                    InvalidateRect(null, null, true);
                }
                catch(Throwable e) {}