当前我从窗口中的文本框中绘制文本。我成功地获得了我需要绘制的文本并绘制了文本。没关系。使用DrawText重绘C++
下面是问题:当我在输入框中写入其他内容并再次绘制文本(通过按钮按下)时,新文本将在前面的文本顶部绘制出来,以期待。
我是新来的所有这一切,我无法找到一种方式来清除之前的文本,然后绘制新的文本。
这里是我的代码:
void DrawMyText(HWND hwnd) {
int iTextLength = GetWindowTextLength(hDrawInput) + 1;
char cDrawText[1000] = "";
HDC wdc = GetWindowDC(hwnd);
RECT canvas;
canvas.left = 168;
canvas.top = 108;
canvas.right = 500;
canvas.bottom = 500;
GetWindowText(hDrawInput, cDrawText, iTextLength);
SetTextColor(wdc, 0x00FF0066);
SetBkMode(wdc,TRANSPARENT);
DrawText(wdc, cDrawText, -1, &canvas, DT_LEFT);
DeleteDC(wdc);
}
如何做到这一点的任何提示?如果需要,我会很乐意提供任何其他信息。提前致谢!