- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
自上周以来,我一直在使用 PrimeFaces 3.1.1,它似乎是一个出色的可视化组件框架。我正在从 Richfaces 进行迁移,并试图让所有内容仅适用于 Prime 和 JSF2(2.1.6 版本)。
我的问题来自于我必须实现的动态工具栏。一些操作直接集成在工具栏上(commandButtons),其他操作内部有一些子操作,所以我必须用操作名称做一个 menuButton 并在此处添加每个操作,如菜单项。这是我的代码:
<h:panelGroup id="Texto_Header" layout="block">
<h:form>
<p:toolbar>
<p:toolbarGroup>
<!-- Operaciones de aplicación -->
<ui:repeat value="#{logedBean._apps}" var="opBean">
<!-- OPERACION PRINCIPAL EJECUTABLE -->
<h:panelGroup rendered="#{opBean._Clickable}">
<p:commandButton ajax="true" value="#{opBean._Nombre}"
action="#{opBean.actionOperationClick}" />
</h:panelGroup>
<!-- OPERACION PRINCIPAL CON SUBOPERACIONES -->
<h:panelGroup rendered="#{!opBean._Clickable}">
<p:menuButton value="#{opBean._Nombre}">
<ui:repeat value="#{opBean._subOperaciones}" var="opBean2">
<p:menuitem ajax="true" value="#{opBean2._Nombre}"
actionListener="#{opBean2.actionOperationClick}" />
</ui:repeat>
</p:menuButton>
</h:panelGroup>
</ui:repeat>
</p:toolbarGroup>
</p:toolbar>
</h:form>
</h:panelGroup>
我的问题是我只获得了第一个操作组件,它正确地呈现了命令按钮并且它们的 Action 运行良好,但是在“#{!opBean._Clickable}”的情况下我得到了一个带有名称的菜单按钮,但里面没有菜单项。看起来嵌入式 ui:repeat 迭代没有做好。
我使用 c:foreach、c:choose 和 c:otherwise 标签尝试了同样的机会,在这种情况下我得到了菜单在视觉上做得很好,commandButton 操作也运行良好,但是当我单击 menuItem 时,它说无法识别 opBean2...但是正如我之前所说,我更喜欢专门使用 JSF 标签。有办法吗?
最佳答案
我终于设法让它与 jsp 迭代标签一起工作,并更改 menuitem 标签的 actionListener 属性以获取 action 属性。这是我的代码:
<h:panelGroup id="Texto_Header">
<h:form>
<p:toolbar>
<p:toolbarGroup>
<!-- Operaciones de aplicación -->
<c:forEach items="#{logedBean._apps}" var="opBean">
<!-- MAIN OPERATION -->
<h:panelGroup rendered="#{opBean._Clickable}">
<p:commandButton value="#{opBean._Nombre}"
action="#{opBean.actionOperationClick}" update=":linkPanel" />
</h:panelGroup>
<!-- OPERATION WITH SUBOPERATIONS -->
<h:panelGroup rendered="#{!opBean._Clickable}">
<p:menuButton value="#{opBean._Nombre}">
<c:forEach items="#{opBean._subOperaciones}" var="opBean2">
<p:menuitem value="#{opBean2._Nombre}"
action="#{opBean2.actionOperationClick}" update=":linkPanel" />
</c:forEach>
</p:menuButton>
</h:panelGroup>
</c:forEach>
</p:toolbarGroup>
</p:toolbar>
</h:form>
</h:panelGroup>
已编辑
它必须带有 jsp 标签,因为 Primefaces Toolbar没有特定的模型可以集成到支持 bean 中以便在页面呈现期间构建。所以它必须在页面构建中。 Primefaces TabView 也发生了类似情况但他们设法解决了这个问题,现在 tabView 有一个内置的迭代器。查看相关提示。
https://stackoverflow.com/a/4057370/1199132
已编辑 2
新的 PF MenuModel 似乎完全可以解决此类问题。它将能够在 bean 上以编程方式构建菜单。从 4.0 开始可用。
关于java - 如何制作 primefaces 动态工具栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9587179/
两者有什么区别? v7-21 工具栏中没有的所有功能都包含在工具栏中吗?使用 v7-21 工具栏代替工具栏有哪些限制? 最佳答案 如果您查看 Toolbar 的文档和 AppCompat Toolba
如何使用 jQuery 进行可拖动的 Tinymce 工具栏? 最佳答案 在你的 tinyMCE init 方法中试试这个 tinyMCE.init({ // ... handle_event_cal
是否可以有一个多行的 ExtJsToolBar?我想要第一行的几个控件和第二行的 3 个 ExtJsButtons。 工具栏是面板的顶部工具栏。 最佳答案 不确定早期版本,但从 ExtJS 4.0 开
环境: iOS 6/7、Xcode 5 中的自动布局。 我知道要调整 NavBar 以适应状态栏,我将 NavBar 的背景图像设置为 64 位高(引用:WWDC 2013 Video Lecture
有没有办法获取整个 OS X 中使用的默认 NSButton 来导航窗口的内容?我所说的按钮显示在 Finder、系统偏好设置、Safari、Mac App Store、游戏中心等中。 虽然我可以使用
我没有使用 Windows 上 gvim 中的菜单和工具栏;我可以隐藏它们吗? 这将为文本区域提供更多空间。 最佳答案 使用guioptions设置(缩写为go)。 :set guioptions -
我使用 jQuery 为tinymce 创建了一个外部 float 工具栏。 tinyMCE.init({ ... theme_advanced_toolbar_location :
使用我的 TitleAreaDialog 是否可以在按钮下方的底部添加一个区域或一个栏。当操作发生时,可以向用户显示一条消息。 这是我所指的例子 最佳答案 据我所知,这对于 JFace Dialog
我已经创建了 JToolBar (Java Swing)。我在包含 JToolBar 的框架上设置了背景图像。我希望我的 JToolBar 是透明的,以便保持在框架上的图像应该是可见的。我正在使用 s
如何检查键盘何时完全显示以及何时像这样折叠?也许我可以检查它的高度? 我暂时检查了 notification 中的 userInfo,但没有发现对解决我的问题有用。 最佳答案 只需订阅通知: Noti
我想使用 jQuery UI 创建一个带标题的工具栏。 到目前为止,我有: HTML: go to beginning Submit CSS: #toolbar
这是我的 list 文件: 这是我的 Activity 布局: 这是我
如何去掉 android View 顶部的白框?我在我的代码中看不到我调用创建工具栏的东西的任何地方,我也没有自己编写代码。它也存在于 View 之上,而不是其中。我猜 xml 文件的设计 View
有人知道怎么做吗? 最佳答案 使用带有 alignParentBottom="true"的 LinearLayout 像这样: 我没有尝试编译,您可能需要修正一些拼写错误,但这是一个
我想以编程方式更改 Android 工具栏中导航图标(屏幕截图中的黑色圆圈)的高度和宽度。有什么办法吗?这不是工具栏 Logo 。我无法在 Styles xml 中更新工具栏主题,因为我希望它是动态的
我目前正在开发一个实现 Appcompat 工具栏的应用程序。现在我的问题是,如果我选择一个 Light Actionbar 作为基础,菜单是白色的,标题是黑色的。我希望两者都是白色的。如果我更改为
是否可以在工具栏中同时显示主页图标和返回图标?1)是否可以更改后退按钮图标和主页图标的显示顺序。目前它首先显示箭头按钮,然后显示 Logo (主页按钮) 2) 第二个要求是在单击主页图标时清除 Act
我想要一个双倍高度的操作栏(如 Material 指南示例中所示),但标题中(可能)有 2 行文本。我使用的标题是动态的,取决于页面中显示的项目。如果只有一行,它应该看起来像一个普通的操作栏,如果有
目前正在努力调整我的工具栏的布局。 我有两个按钮。一个左对齐,另一个右对齐。文本(应用程序标题)需要位于两个按钮的中央。 例子:[按钮 1] [文本] [按钮 2] 我的问题。文本未居中对齐。 它需要
我有一个包含 CardView 的 RecyclerView。 我想为每个 CardView 添加一个工具栏,使其看起来和行为都像主工具栏: [图标] [标题] ......... [按钮] [按钮]
我是一名优秀的程序员,十分优秀!