我在考虑在我的应用程序中实现一个缩带GUI,当然要遵守MS指南,以便它感觉像一个正常的缩带等等。但我正在尝试解决动态更改缩带中的一个特定问题。
我正在创建一个概念游戏编辑器,请不要问为什么要使用缩带,因为这只是一个概念想法,但应用程序将有许多编辑器(2D、3D、代码等),每个编辑器都应该适应并显示相关控件,例如在2D编辑器中可能是画笔,在3D中可能是平移和旋转工具。
根据缩带指南,主菜单包含最常用的工具是有意义的,但只针对正在编辑的对象类型(对于2D或代码来说,旋转没有意义!)。
起初,我认为它可以为每个编辑器创建一个窗口,但这会造成混乱,我宁愿有很多选项卡式的编辑器,这样你就可以像在eclipse中一样快速地翻阅它们。此外,所有编辑器都会保存回一个文件,因此保持一个应用程序窗口对于用户来说是有意义的。
我想我可以根据用户打开的编辑器类型动态更改缩带选项卡(选项卡可能会出现/消失,主页选项卡上的内容等会发生变化),但这违反了MS指南:
“显示在组中的控件不得因选择而更改。如果控件未激活,则必须将其置为灰色,而不是从组中删除”
“缩带上选择的选项卡不能自动切换,因为用户在文档中进行的选择(除非在上下文选项卡部分中注明)。”
我理解指南背后的原因,但我不确定如何在这种情况下使缩带感觉正确:
- 根据编辑器类型更改选项卡内容(违反指南) - 每个编辑器类型都有一个选项卡(但如果我最终拥有15个编辑器类型怎么办!) - 有一个非常通用的缩带,并将特定的编辑器操作移动到侧边栏或其他地方(不是最好的GUI设计) - 对于每种类型的编辑器使用上下文选项卡(更好的解决方案,但意味着您始终有一个上下文选项卡打开!)
如果有其他想法/解决方案,将不胜感激,因为我必须使用一个缩带,并且必须将其用于此类应用程序!
我正在创建一个概念游戏编辑器,请不要问为什么要使用缩带,因为这只是一个概念想法,但应用程序将有许多编辑器(2D、3D、代码等),每个编辑器都应该适应并显示相关控件,例如在2D编辑器中可能是画笔,在3D中可能是平移和旋转工具。
根据缩带指南,主菜单包含最常用的工具是有意义的,但只针对正在编辑的对象类型(对于2D或代码来说,旋转没有意义!)。
起初,我认为它可以为每个编辑器创建一个窗口,但这会造成混乱,我宁愿有很多选项卡式的编辑器,这样你就可以像在eclipse中一样快速地翻阅它们。此外,所有编辑器都会保存回一个文件,因此保持一个应用程序窗口对于用户来说是有意义的。
我想我可以根据用户打开的编辑器类型动态更改缩带选项卡(选项卡可能会出现/消失,主页选项卡上的内容等会发生变化),但这违反了MS指南:
“显示在组中的控件不得因选择而更改。如果控件未激活,则必须将其置为灰色,而不是从组中删除”
“缩带上选择的选项卡不能自动切换,因为用户在文档中进行的选择(除非在上下文选项卡部分中注明)。”
我理解指南背后的原因,但我不确定如何在这种情况下使缩带感觉正确:
- 根据编辑器类型更改选项卡内容(违反指南) - 每个编辑器类型都有一个选项卡(但如果我最终拥有15个编辑器类型怎么办!) - 有一个非常通用的缩带,并将特定的编辑器操作移动到侧边栏或其他地方(不是最好的GUI设计) - 对于每种类型的编辑器使用上下文选项卡(更好的解决方案,但意味着您始终有一个上下文选项卡打开!)
如果有其他想法/解决方案,将不胜感激,因为我必须使用一个缩带,并且必须将其用于此类应用程序!