windows-ribbon-framework – 如何使Windows Ribbon Framework尊重用户的字体大小?

Office 2007/2010团队的丝带荣誉是用户(菜单)字体大小。

Windows Ribbon Framework色带(由MS Paint和我的应用程序使用)忽略用户(即我的)字体首选项。

截图显示

> Excel 2010
>油漆(WRF)
>我的应用程序(WRF)

如何获得Windows Ribbon Framework功能区以满足用户的字体大小?

奖金喋喋不休

没有单个“Windows字体”。允许用户配置六种不同的字体:

>图标标题字体
>状态字体
>消息字体
>菜单字体
>字幕字体
>小字幕字体

Office团队的功能区使用菜单字体,这是有用的,因为功能区是一个菜单。您可以使用以下命令检索菜单字体:

//Win32
SystemParametersInfo(SPI_GETNONCLIENTMETRICS,ref nonClientMetrics,0); 
nonClientMetrics.lfMenuFont;

//.NET
SystemFonts.MenuFont;

//Delphi
TScreen.MenuFont

丝带颜色:

认情况下,色带不符合用户的配色方案(请注意我的屏幕截图中的蓝色色带,以我的棕色玻璃色)。有一个api可以改变功能区的颜色,就像在第三个功能区(我的应用程序中托管的)中看到的那样。

//change ribbon background color
IPropertyStore(framework).SetValue(UI_PKEY_GlobalBackgroundColor,glassColor);

//change ribbon font color
IPropertyStore(framework).SetValue(UI_PKEY_GlobalTextColor,Color.Black);

奖金阅读

> Windows Ribbon Framework: How to change font face and size?(那个问题是关于如何设置一个任意的字体和大小 – 这可以用来尊重用户的Windows字体首选项。这个问题是关于指示功能本身来满足用户的字体偏好,而仍然无法指定任意字体/大小)

这是一个较旧的问题,但是有一个FontSize属性可用于WPF Windows功能区:
http://www.microsoft.com/en-us/download/details.aspx?id=11877

您可以将该属性绑定到返回SystemFonts.MenuFontSize的函数,并获取所需的较大文本。

相关文章

Windows2012R2备用域控搭建 前置操作 域控主域控的主dns:自...
主域控角色迁移和夺取(转载) 转载自:http://yupeizhi.blo...
Windows2012R2 NTP时间同步 Windows2012R2里没有了internet时...
Windows注册表操作基础代码 Windows下对注册表进行操作使用的...
黑客常用WinAPI函数整理之前的博客写了很多关于Windows编程的...
一个简单的Windows Socket可复用框架说起网络编程,无非是建...