可调整大小的窗口,可调整大小的圆

时间:2015-08-02 10:07:35

标签: c++

我必须制作一个带有圆圈的可调整大小的窗口,它也应该可以调整大小,即如果窗口变大,它应该变大,如果变小,那么它就会变小​​。

我在c ++中创建了一个使用windows.h的简单窗口,它是可调整大小的。现在我应该如何调整窗口的大小呢?

一种方法我认为如果我得到窗口的当前大小,我将能够相应地调整半径。但是......

为了获得窗口的当前大小,我使用了GetWindowRect()但它只在我拉伸窗口时才有效。当我收缩它时它不起作用。

所以请弄清楚。 提前谢谢!

1 个答案:

答案 0 :(得分:0)

您可以使用WidthHeight并不重要,因为我们将Width作为圆的半径。

// Use SetWindows(Width 1~100, Height 1~100) in main()
void SetWindows(int Width,int Height){
    _COORD coord;
    coord.X=Width;
    coord.Y=Height;

    _SMALL_RECT Rect;
    Rect.Top=0;
    Rect.Left=0;
    Rect.Bottom=Height-1;
    Rect.Right=Width-1; //18

    HANDLE Handle=GetStdHandle(STD_OUTPUT_HANDLE);      // Get Handle
    SetConsoleScreenBufferSize(Handle,coord);           // Set Buffer Size
    SetConsoleWindowInfo(Handle,TRUE,&Rect);            // Set Window Size

    DrawCircle(Width);
}

void DrawCircle(int Radius){

    // Draw Circle here, radius provided

}