加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

Windows 8中的视觉样式

发布时间:2020-12-14 05:24:43 所属栏目:Windows 来源:网络整理
导读:我有以下C代码(本机桌面应用程序),它使用Microsoft的 Visual Styles API绘制关闭按钮. RECT r = DetermineButtonRect();HANDLE h = OpenThemeData(Handle,L"WINDOW");DrawThemeBackground(h,hdc,WP_CLOSEBUTTON,CBS_NORMAL,rect,NULL);CloseThemeData(h); 这
我有以下C代码(本机桌面应用程序),它使用Microsoft的 Visual Styles API绘制关闭按钮.

RECT r = DetermineButtonRect();
HANDLE h = OpenThemeData(Handle,L"WINDOW");
DrawThemeBackground(h,hdc,WP_CLOSEBUTTON,CBS_NORMAL,&rect,NULL);
CloseThemeData(h);

这在早期版本的Windows中运行良好,但在Windows 8中,它坚持使用Windows 7样式进行绘制.这并不可怕,但是没有让应用程序的所有部分都使用相同的视觉风格仍然令人沮丧.这是一个截图:

从上到下:

>标准的Windows 8关闭按钮,使用Windows 8的极简非玻璃外观.
>标准的Windows 8 MDI关闭按钮(WP_MDICLOSEBUTTON,由于其更明显的渐变,看起来有点不合适,但这是微软的决定.
>我自己绘制的关闭按钮,使用完整的Aero Glass风格(与Windows 7完全相同),因此看起来非常不合适.

有没有办法让Visual Styles API绘制Windows 8样式(非玻璃)按钮?或者我应该使用不同的API?

解决方法

使用WP_SMALLCLOSEBUTTON,它似乎适用于具有正确主题的Windows 7和Windows 8.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读