HDC画出来的图像怎么清空?
  • 板块灌水区
  • 楼主hdkghc
  • 当前回复17
  • 已保存回复17
  • 发布时间2023/8/11 09:39
  • 上次更新2023/11/3 04:33:57
查看原帖
HDC画出来的图像怎么清空?
346134
hdkghc楼主2023/8/11 09:39

RT QwQ

#include<bits/stdc++.h>
#include<Windows.h>
#define N 20
using namespace std;
int main()
{
	HWND hWnd = GetDesktopWindow();
	HDC hdc = GetDC(hWnd);
	HPEN hPen = (HPEN)CreatePen(PS_SOLID, 3, RGB(0, 255, 0));
	HBRUSH hBrush = (HBRUSH)GetStockObject(NULL_BRUSH);
	SelectObject(hdc, hPen);
	SelectObject(hdc, hBrush);
	while(1)
	{
		POINT mouse;
		GetCursorPos(&mouse);
//		SetPixel(hdc, mouse.x, mouse.y, RGB(0, 255, 0));
		MoveToEx(hdc, mouse.x - N - N / 2, mouse.y, NULL);
		LineTo(hdc, mouse.x - N + N / 2, mouse.y);
		MoveToEx(hdc, mouse.x + N - N / 2, mouse.y, NULL);
		LineTo(hdc, mouse.x + N + N / 2, mouse.y);
		MoveToEx(hdc, mouse.x, mouse.y - N - N / 2, NULL);
		LineTo(hdc, mouse.x, mouse.y - N + N / 2);
		MoveToEx(hdc, mouse.x, mouse.y + N - N / 2, NULL);
		LineTo(hdc, mouse.x, mouse.y + N + N / 2);
		Ellipse(hdc, mouse.x - N, mouse.y - N, mouse.x + N, mouse.y + N);
		Ellipse(hdc, mouse.x - 1, mouse.y - 1, mouse.x + 1, mouse.y + 1);
		Sleep(100);
		cout << '(' << mouse.x << ", " << mouse.y << ")                        \r";
		if(GetLastError() != 0) return GetLastError();
	}
	ReleaseDC(hWnd, hdc);
	DeleteDC(hdc);
}
2023/8/11 09:39
加载中...