gpt4 book ai didi

windows - 为什么 Bitblt 不能工作

转载 作者:可可西里 更新时间:2023-11-01 11:09:54 29 4
gpt4 key购买 nike

>   case WM_PAINT:          
{
> hdc = BeginPaint(hWnd, &ps);
> // TODO: Add any drawing code here...
> RECT rt;
> GetClientRect(hWnd, &rt);
> HDC myHdc = CreateCompatibleDC(hdc);
>
> DrawText(myHdc, szHello, strlen(szHello), &rt, DT_CENTER);
> BitBlt(hdc,0,0,rt.right-rt.left,rt.bottom-rt.top,myHdc,0,0,SRCCOPY);
>
> EndPaint(hWnd, &ps);
}
>
> break;

为什么窗口不能显示文字?

最佳答案

您需要创建 BITMAP 并在您的 DC 中选择它:

RECT rt;
GetClientRect(hWnd, &rt);
HDC myHdc = CreateCompatibleDC(hdc);

CBitmap bitmap = CreateCompatibleBitmap(hdc, width, height);
HBITMAP oldBitmap = ::SelectObject(myHdc, bitmap);

DrawText(myHdc, szHello, strlen(szHello), &rt, DT_CENTER);
BitBlt(hdc,0,0,rt.right-rt.left,rt.bottom-rt.top,myHdc,0,0,SRCCOPY);

::SelectObject(myHdc, oldBitmap);

EndPaint(hWnd, &ps);

关于windows - 为什么 Bitblt 不能工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5508322/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com