菜单栏

此复合组件用来对其他组件进行布局。通常,菜单栏包含超链接、按钮和分隔线,并且将它们安排成具有操作栏或导航栏的外观和行为。此外,它还可以包含其他菜单栏组件,在这种情况下,将创建具有可折叠/可展开子菜单的嵌套结构。

属性视图和全部属性视图

组件的“属性”视图显示可以对组件设置的最常见属性集,并且根据组件的不同,您还可以看到用于添加控件、操作或其他组件的选项。要打开“属性”视图,请单击窗口 > 显示视图 > 属性

“菜单栏”组件的这些常用属性显示在“属性”视图中的 hx:panelMenu 选项卡上。要获取完整的属性列表,请参阅全部菜单栏属性表。面板项的其他配置选项显示在 hx:panelMenu > 项选项卡上:

表 1. 菜单栏配置选项

配置选项

描述

对控件添加项

允许您查看菜单栏中的项,以及添加超链接、命令按钮、子面板和分隔符。您还可以使用“除去”按钮除去某些项,并使用“上移”和“下移”按钮来更改这些项在面板中的顺序。

“全部属性”视图显示可以对组件设置的全部属性的表,包含可以从“属性”视图访问的那些属性。要切换至“全部属性”视图,请单击“属性”视图右上角的全部属性图标 “全部属性”图标

表 2. 全部菜单栏属性

属性名称

描述

binding

该表达式将组件的实例(通常为用户界面组件)与 Bean 属性(通常在备份文件中)绑定。

flyOpen

如果设置为 true 或省略,则当您将鼠标指针悬停在包含子菜单的顶级菜单中的菜单项上时,将显示子菜单。如果设置为 false,则必须单击包含子菜单的顶级菜单中的菜单项,才能看到子菜单。

flyOpenBody

如果设置为 true 或省略,则当您将鼠标指针悬停在包含子菜单的顶级菜单中的菜单项上时,将显示子菜单。如果设置为 false,则必须单击包含子菜单的顶级菜单中的菜单项,才能看到子菜单。

id

对组件指定一个名称。它在 JSP 内应该是唯一名称。

initialSelection

菜单项的 ID 初始显示为“已选中”,它是 CSS 定义的另一可视状态。

onchange

如果提供,则每当执行操作时将调用此函数。

openInPlace

如果为 false 或省略,则将在“单独窗口”中显示子菜单,即,子菜单悬停在页面内容上。如果为 true,则子菜单将“就地”打开,即,将在菜单栏中父菜单项后面打开一个空间,然后子菜单显示在该空间中。这允许菜单成为“树形的”,类似于 Windows® 资源管理器。在菜单树的各个级别,只有一个子菜单“就地”显示。如果显示其他子菜单,则将“关闭”(隐藏)任何其他“就地”显示的菜单,然后才显示新的菜单。如果菜单是 openInPlace,则它也是粘滞的。
注: 如果在水平菜单中使用了 openInPlace,则它可能无法正常呈示。
注意:

openSticky

如果省略或为 false,则子菜单将显示为“弹出菜单”,且仅在处于“活动”(指针悬停在它们的父菜单项上或它们的父菜单项已被单击)状态时才显示。如果为 true,则对于顶级菜单下面的各个级别来说,仅该级别中最后一个“活动”(指针悬停在其上/被单击)子菜单才会留在屏幕上。
注: 顶级菜单始终为粘滞的。此属性仅影响子菜单。

rendered

可设置为 true 或 false:
  • false - 将不会在运行时向浏览器呈示组件。
  • true - 将呈示组件。这是缺省值。

selectAll

如果提供了初始所选项或通过 JavaScript™ 设置了所选项,则指定是仅将子菜单项显示为“已选中”(false 或省略),还是将从包含的父菜单向下到子菜单项的所有菜单项都显示为“已选中”。

styleClass

当呈示此元素时要应用的以空格分隔的 CSS 样式类列表。此值必须作为生成标记上的类属性来传递。定义所选组件的类,例如,样式表。这可以通过手工完成,也可以通过单击按钮并从窗口中选择期望的类来完成。

tabindex

指定 JSP 中按跳进顺序排列的组件的位置。此值必须是 0 与 32767 之间的某个数。

vertical

如果为 true,则将垂直显示顶级菜单。如果为 false 或省略,则将水平绘制。

verticalBody

如果为 true 或省略,则将垂直显示子菜单,即顶级菜单之外的所有菜单。如果为 false,则将水平绘制。

对于菜单栏的任何子标记(除了 <hx:panelMenu>),<f:attribute> 定义的下列属性可以添加至子代以控制它在菜单栏中的操作方式:

表 3. 子标记属性

属性名称

描述

altClass

如果为 true,则将通过“替代类”CSS 类来设置此菜单项的样式。如果为 false 或省略,则将通过“普通”CSS 类来设置此菜单项的样式。

itemDisabled

如果为 true,则将禁用此菜单项。如果为 false 或省略,则不会禁用此菜单项。

actionClick

如果为 true,则单击此菜单项将同时执行与其相关联的标记(例如,执行 requestLink)和显示与其相关联的子菜单。仅当应用于标题构面中的子标记时,即应用于包含相关联子菜单的菜单项时,此属性才有意义。缺省情况下,如果单击没有任何子菜单项的菜单项,则将执行该菜单项。同样地,如果单击任何包含相关联子菜单的菜单项,则将仅显示该子菜单。在某些情况下,通常是在构建导航结构时,单击包含相关联子菜单的菜单项需要同时执行操作(例如,获取指向不同框架的页面) 和显示该子菜单。

相关概念
数据表组件
相关任务
对 Faces JSP 文件添加超链接
使用带有 Faces JSP 页的导航规则

反馈