问题描述
我在我的应用程序中使用了 sencha GXT 3(版本 3.1.0)。我想水平显示许多项目(小部件)。为此,我使用 HBoxLayoutContainer。我有 14 个小部件要显示。前 10 个小部件显示正确。不显示剩余的 4 个小部件,容器显示一个下拉按钮(溢出情况)。使用此按钮,我看不到这 4 个项目。你能帮我解决这个问题吗?
解决方法
HBoxLayoutContainer 非常具体地说明了溢出菜单中的可用内容。它需要知道如何将每个项目转换为 MenuItem。它必须是可渲染的并处理适当的选择/点击事件。
这意味着并不是每个添加到 HBoxLayoutContainer 中的 Widget 都将与溢出 MenuItem 兼容。例如,您无法(轻松)将 Grid 转换为单个 MenuItem;至少不是抽象的“小部件库”方式。
如果您打开 HBoxLayoutContainer 并检查 addWidgetToMenu,您将更好地了解默认情况下支持哪些类型。从我的副本(4.0.0 - 但可能与 3.x 没有太大区别),我看到:
- SeparatorToolItem
- 拆分按钮
- 文本按钮
- 按钮组
- 切换按钮
所有这些都是 GXT 组件。
不过,并不是所有的都丢失了。由于该方法是受保护的,因此子类化并覆盖此方法以处理您选择的任何 Widget 应该相当简单。