基于Windows 7中的 Ribbon开发技术应用( 四 )



这意味着,当位0或2位在当前选定的模式设置,然后在标签的显示 。因此,当我请Ribbon:: SetModes(0) ,此标签将会隐藏 。当我使用2个或8或任何整数,那么0或2位设置,该标签将显示 。同样可以很容易的适用于程序组 。 为了获取/设置ribbon管理的一些状态, 。您可以使用IUIFramework::GetUICommandProperty获得一个特殊键,或者您也可以查询"cv" IUnknown成员通过RIBBON_MESSAGE结构的IPropertyStore ;使用GetValue() / SetValue() /提交到读/写性能引用控制 。还有一些"整体"键,您查询IUIFramework直接的IPropertyStore。例如,当我得到通知, WndProc的颜色选择,它适用于它的背景颜色的ribbon如下:
PROPVARIANT val;// Get the property of the control we pushedHRESULT hr = rm->u_f->GetUICommandProperty(rm->cmd,UI_PKEY_Color,&val); 
 IPropertyStore* st = 0;rm->u_f->QueryInterface( 
__uuidof(IPropertyStore),(void**)&st);if (st && SUCCEEDED(hr) 
) 
 { 
 st->SetValue(UI_PKEY_GlobalBackgroundColor,val); st->Commit(); 
}
如果在字体控制,您只需查询IUnknown 指针* pointer的IPropertyStore和使用UI_PKEY_FontPropertIEs_XXXX键 。
总结:随着Windows平台的发展升级,往往都伴随着系统图形界面的重新设计 。从Windows XP到Windows Vista,最大的革新就是Windows Aero的引入 。
【基于Windows 7中的 Ribbon开发技术应用】而在微软的下一代Windows平台Windows 7中,虽然Aero被保留下来,但是Windows 7的图形用户界面更多的是朝着Office 2007相同的方向前进,无论是系统自带的工具软件,例如画图、写字板等,还是上层的第三方应用软件,例如Office 2007、AutoCAD、SnagIt等等,都全面应用了Ribbon界面 。

推荐阅读