C++ 调整rect的大小,但将文本保持在同一位置

C++ 调整rect的大小,但将文本保持在同一位置,c++,winapi,C++,Winapi,我有一个矩形,可以用文本调整大小。 文本绘制在带有DT_中心的矩形的顶部,我希望文本能够保持在相同的位置,但只打印矩形位于顶部的部分 目前,我的文本只在其正确的位置打印,但当矩形不在文本下方时显示 这是在WM_定时器中设置的,每次调用定时器时,我都会向其添加10 这一切都是用WM_颜料画的 当矩形从左向右滑动时: if (i <= m_sWndSize.cx) { m_rcCurrent = { 0, 0, i, m_sWndSize.cy };

我有一个矩形,可以用文本调整大小。 文本绘制在带有DT_中心的矩形的顶部,我希望文本能够保持在相同的位置,但只打印矩形位于顶部的部分

目前,我的文本只在其正确的位置打印,但当矩形不在文本下方时显示

这是在WM_定时器中设置的,每次调用定时器时,我都会向其添加10 这一切都是用WM_颜料画的

当矩形从左向右滑动时:

    if (i <= m_sWndSize.cx)
    {
        m_rcCurrent = { 0, 0,  i,  m_sWndSize.cy };
        m_rcCurrentText = { 0, 0,  i,  m_sWndSize.cy };
    }

如果(我按照乔纳森·波特所说的去做

使用
CreateRectRgnIndirect
SelectClipRgn


谢谢你的代码是C和C++的,同时我没有添加C标签,因为C++是这么多C,这和数学有关系。我删除了C标签。用代码< CyrAtExcTrnGuange从矩形创建一个剪辑区域,然后在你画文本之前用<代码> SelectClipRgn < /代码>安装它。我不知道如何使用它,我的文字只是在它没有结束的时候才显示出来。让它工作起来。谢谢@JonathanPotter