gpt4 book ai didi

java - Primefaces 选项卡 View : set Active Index after some counting

转载 作者:行者123 更新时间:2023-11-30 04:16:32 25 4
gpt4 key购买 nike

我有一个选项卡 View ,其中包含四个选项卡和三个命令按钮(计数、添加到表、导出到 Word)。

我在第一个选项卡中输入一些文本数据,在第二个选项卡中输入一些数字数据,然后当我按下第一个命令按钮(计数)时,我的程序会进行一些计数,但我无法在我显示的第三个选项卡上设置 Activity 索引计数结果。

<h:form id="dataForm1" prependId="false">
<div>
<p:commandButton id="count" update="tbv" process="tbv:tab1 tbv:tab2" />
<p:commandButton id="addToWord" .... />
<p:commandButton id="exportToWord" ... />
</div
<div>
<p:growl id="growlm" showDetail="true" />
<p:tabView activeIndex="#{disableTag.activeTabIndex}" id="tbv" tabChangeListener="#{disableTag.onTabChange}">
<p:ajax event="tabChange" listener="#{disableTag.onTabChange}" update=":dataForm1:growlm" />
<p:tab id="tab1">some text data </p:tab>
<p:tab id="tab2">some numeric data</p:tab>
<p:tab id="tab3">result of counting from tab2</p:tab>
<p:tab id="tab4">table</p:tab>
</p:tabView>

支持 bean 公共(public) int getActiveTabIndex() { 返回 Activity 选项卡索引; }

public void setActiveTabIndex(int activeTabIndex) {
this.activeTabIndex = activeTabIndex;
}

public void onTabChange(TabChangeEvent event) {
TabView tv = (TabView) event.getComponent();
this.setActiveTabIndex(tv.getActiveIndex());
System.out.println("###### ACtive tab: "+activeTabIndex);
}

但它对我不起作用,你有什么想法:我如何在计数后设置第三个选项卡 activeIndex=2 ?

最佳答案

这是一种获取它的方法:

//查看

    <h:form id="yourForm">
...
<p:commandButton value="Go to tab 3" action="#{yourBackingBean.doSomeCounting('2')}"
update="tabView"/>
...
</h:form>


然后在你的计数方法中:

//BackingBean

public void doSomeCounting(String tabIndex){
// your counting logic
try {
activeTabIndex = Integer.parseInt(tabIndex);
System.out.println("showing tab: "+activeTabIndex);
} catch (NumberFormatException e) {}
}


如果我正确理解你的意图。

关于java - Primefaces 选项卡 View : set Active Index after some counting,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18202470/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com