首页 > 解决方案 > 使用 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;
}

但是当我调整或最小化控制台时,所有绘制的东西都消失了,有人可以给我一个例子来说明如何解决这个问题?

标签: c++windows

解决方案


推荐阅读