每当我使用top 50
创建一个窗口(确切的参数可以在下面的代码中找到)时,它就会像旧样式的窗口一样显示:
仅当我在远程桌面上启动它时,关闭连接并重新连接,它会更改为所需的Windows 10样式:
它与应用程序在执行此操作时收到的几条[datatime]
消息有关吗?
很明显,我希望窗口在创建时具有现代风格,而不是在处理某些消息之后。
我尝试了CreateWindowEx(...)
样式参数的不同组合。奇怪的是,该应用程序只能可靠显示WM_SETTINGCHANGE
。
我已经尝试了WS_...
(具有各种参数)和WS_OVERLAPPEDWINDOW | WS_VISIBLE
的两个顺序。
我还尝试过弄乱目标平台和工具集,但无济于事(使用VS2015,v140)。
代码段:
ShowWindow
答案 0 :(得分:1)
奇怪的是,解决方案似乎是从样式标志中删除WS_VISIBLE
,然后手动显示窗口:
if (handle != NULL)
{
... // resizing the window's contents
ShowWindow(handle, 1); /* Add this */
UpdateWindow(handle);
}
我100%确定已经尝试过,但是突然可以使用。随便...