最大化的WS_POPUP窗口位于任务栏前

时间:2017-10-01 14:48:47

标签: c++ window gdi createwindow

我使用该代码在C ++中创建一个窗口:

HWnd = CreateWindow(wc.lpszClassName,
    "myapp",
    WS_POPUP |WS_VISIBLE,
    10, 10, 1000, 800, 0, 0, hInst, NULL);

它看起来像我想要的但是当我用这样的方式最大化它时:

ShowWindow(hwnd, SW_SHOWMAXIMIZED);

然后它就像一个全屏窗口,以便隐藏任务栏。 我认为这是因为它是一个POPUP窗口,但这就像我希望它出现一样。

我是否需要创建自己的最大化函数或是否有一个参数来避免这种情况?

由于

1 个答案:

答案 0 :(得分:1)

您可以添加WS_CAPTION | WS_SYSMENU | WS_MAXIMIZEBOX样式。

如果您希望窗口没有标题,则需要手动调整窗口大小以适应桌面工作区,您可以使用SystemParametersInfo指定SPI_GETWORKAREA标记进行查询。