c++ - 使用 Windows API 绘图
问题描述
我开发了这个运行良好的程序,并在屏幕上绘制了一些图形:
#include <Windows.h>
#include<windows.h>
#include<iostream>
using namespace std;
int main() {
cin.ignore();
//Get a console handle
HWND myconsole = GetConsoleWindow();
//Get a handle to device context
HDC mydc = GetDC(myconsole);
//Choose any color
COLORREF COLOR= RGB(255,255,255);
HPEN hBluePen = CreatePen(PS_SOLID, 1, COLOR);
HGDIOBJ hPen = SelectObject(mydc, hBluePen);
//Lines
MoveToEx(mydc, 10, 40, NULL);
LineTo(mydc, 44, 10);
LineTo(mydc, 78, 40);
//Rectangles
cin.ignore();
Rectangle(mydc, 16, 36, 72, 70);
Rectangle(mydc, 60, 80, 80, 90);
//Elipse
cin.ignore();
Ellipse(mydc, 40, 55, 48, 65);
ReleaseDC(myconsole, mydc);
cin.ignore();
return 0;
}
但是当我调整或最小化控制台时,所有绘制的东西都消失了,有人可以给我一个例子来说明如何解决这个问题?
解决方案
推荐阅读
- sqoop - 解析导入 sqoop 的参数时出错
- swagger - 为什么 POST 方法对成功插入值的数组返回 500 错误?
- python - 在python中将行写到匹配的字符串
- c# - 无法创建新类“系统找不到指定的路径”
- c# - 如何将包含“错误”的列表条目放在另一个列表中?
- android - 观察多个 LiveData 以填充单个容器
- java - Mac笔记本电脑锁定时,终端上运行的java程序是否继续运行?
- wordpress - 我似乎无法在我的 WordPress 页面上删除这个奇怪的代码
- python - 多线程嵌入式 Python。这是正确的吗?
- swift - Swift-5.0 中的 UIBarButtonItem 颜色设置