Java學(xué)習(xí)

          java,spring,structs,hibernate,jsf,ireport,jfreechart,jasperreport,tomcat,jboss -----本博客已經(jīng)搬家了,新的地址是 http://www.javaly.cn 如果有對文章有任何疑問或者有任何不懂的地方,歡迎到www.javaly.cn (Java樂園)指出,我會盡力幫助解決。一起進(jìn)步

           

          tomahawk JSF組件擴展組件(二)

          tomahawk JSF組件擴展組件(二)

          關(guān)鍵字: t

          九.使用DataModel作為table的列或數(shù)據(jù)。

          Java代碼 復(fù)制代碼
          1. List headerList = new ArrayList();  
          2.         headerList.add(new ColumnHeader("Index","100",false));  
          3.         headerList.add(new ColumnHeader("Type","200",true));  
          4.         headerList.add(new ColumnHeader("Model","300",true));  
          5.         columnHeaders = new ListDataModel(headerList);  
          6.   
          7. List rowList = new ArrayList();  
          8.         for (int i = 100; i <= 999; i++)  
          9.         {  
          10.             List colList = new ArrayList();  
          11.             colList.add(new Integer(i));  
          12.             colList.add("Car Type " + i);  
          13.             colList.add((i%2==0) ? "blue" : "green");  
          14.             rowList.add(colList);  
          15.         }  
          16.         data = new ListDataModel(rowList);  
          17.   
          18. public void setColumnValue(Object value)  
          19.     {  
          20.       if (data.isRowAvailable() && columnHeaders.isRowAvailable())  
          21.       {  
          22.           ((List)data.getRowData()).set(columnHeaders.getRowIndex(), value);  
          23.       }  
          24.     }  
          25.   
          26.     public String getColumnWidth()  
          27.     {  
          28.         String columnWidth = null;  
          29.         if (data.isRowAvailable() && columnHeaders.isRowAvailable())  
          30.         {  
          31.             columnWidth = ((ColumnHeader)columnHeaders.getRowData()).getWidth();  
          32.         }  
          33.         return columnWidth;  
          34.     }  

           再動態(tài)地在<t:datatable>中生成列與行數(shù)據(jù):

          Java代碼 復(fù)制代碼
          1. <t:columns id="columns" value="#{openDataList.columnHeaders}"   
          2.                   var="columnHeader" style="width:#{openDataList.columnWidth}px">  
          3.     <f:facet name="header">  
          4.         <t:commandSortHeader columnName="#{columnHeader.label}" arrow="false" immediate="false">  
          5.             <f:facet name="ascending">  
          6.                 <t:graphicImage value="images/ascending-arrow.gif" rendered="true" border="0"/>  
          7.             </f:facet>  
          8.             <f:facet name="descending">  
          9.                 <t:graphicImage value="images/descending-arrow.gif" rendered="true" border="0"/>  
          10.             </f:facet>  
          11.             <h:outputText value="#{columnHeader.label}" />  
          12.         </t:commandSortHeader>  
          13.     </f:facet>  
          14.     <!-- row is also available -->  
          15.     <h:inputText rendered="#{openDataList.valueModifiable}" value="#{openDataList.columnValue}" />  
          16.     <h:outputText rendered="#{!openDataList.valueModifiable}" value="#{openDataList.columnValue}" />  
          17. </t:columns>  

           十.<t:panelTabbedPane>的使用

          Java代碼 復(fù)制代碼
          1. <t:panelTabbedPane bgcolor="#FFFFCC" >  
          2.     <!-- 所有tab都有組件寫在panelTab組件的前面-->  
          3.     <f:verbatim><p></f:verbatim>  
          4.     <h:outputText value="#{example_messages['tabbed_common']}"/>  
          5.     <f:verbatim></p></f:verbatim>  
          6.     <t:panelTab id="tab1" label="#{example_messages['tabbed_tab1']}"   
          7.                     rendered="#{tabbedPaneBean.tab1Visible}">  
          8.         <h:selectBooleanCheckbox id="testCheckBox" value="#{testCheckBox.checked}"/>  
          9.         <h:outputLabel for="testCheckBox" value="A checkbox"/>  
          10.         <f:verbatim><br/><br/></f:verbatim>  
          11.         <h:inputText id="inp1"/><f:verbatim><br></f:verbatim>  
          12.         <h:inputText id="inp2" required="true" />  
          13.         <h:message for="inp2" showSummary="false" showDetail="true" />  
          14.     </t:panelTab>  
          15.     <f:subview id="tab2" >  
          16.         <jsp:include page="tab2.jsp"/>  
          17.     </f:subview>  
          18. </t:panelTabbedPane>  

          十一.js日期彈出式組件<t:inputCalendar>

          Java代碼 復(fù)制代碼
          1. <t:inputCalendar monthYearRowClass="yearMonthHeader" weekRowClass="weekHeader"  
          2.                 currentDayCellClass="currentDayCell" value="#{calendarBean.secondDate}"   
          3.                 renderAsPopup="true" popupTodayString="#{example_messages['popup_today_string']}"   
          4.                 popupWeekString="#{example_messages['popup_week_string']}"  
          5.                 renderPopupButtonAsImage="true" />  

           十二.jscookmenu的使用。

          Java代碼 復(fù)制代碼
          1. <t:jscookMenu layout="hbr" theme="ThemeOffice">  
          2.     <%/* Availaible jscookMenu themes: ThemeIE, ThemeMiniBlack, ThemeOffice, ThemePanel 
          3.              Availaible jscookMenu layout: hbr, hbl, hur, hul, vbr, vbl, vur, vul 
          4.              respect to Heng Yuan http://www.cs.ucla.edu/~heng/JSCookMenu 
          5.     */%>  
          6.     <t:navigationMenuItem id="nav_1"  
          7.             itemLabel="#{example_messages['nav_Home']}" action="go_home" />  
          8.     <t:navigationMenuItem id="nav_2"  
          9.             itemLabel="#{example_messages['nav_Examples']}">  
          10.             <t:navigationMenuItem id="nav_2_1"  
          11.                    itemLabel="#{example_messages['nav_Sample_1']}" action="go_sample1" />  
          12.     </t:navigationMenuItem>  
          13.  </t:jscookMenu>  

           十三.<t:panelNavigation2>組件:

          Java代碼 復(fù)制代碼
          1. <t:panelNavigation2 id="nav1" layout="list" itemClass="mypage"   
          2.                                  activeItemClass="selected" openItemClass="selected" >  
          3.   <t:commandNavigation2 value="#{example_messages['panelnav_products']}" action="" >  
          4.             <t:commandNavigation2 action="go_panelnavigation_1" >  
          5.                 <f:verbatim>› </f:verbatim>  
          6.                 <t:outputText value="#{example_messages['panelnav_serach1']}" />  
          7.             </t:commandNavigation2>  
          8.             <t:commandNavigation2 action="go_panelnavigation_1" >  
          9.                 <f:verbatim>› </f:verbatim>  
          10.                 <t:outputText value="#{example_messages['panelnav_serach_acc1']}" />  
          11.             </t:commandNavigation2>  
          12.             <t:commandNavigation2 action="go_panelnavigation_1" >  
          13.                 <f:verbatim>› </f:verbatim>  
          14.                 <t:outputText value="#{example_messages['panelnav_search_adv1']}" />  
          15.             </t:commandNavigation2>  
          16.         </t:commandNavigation2>  
          17.         <t:commandNavigation2 value="#{example_messages['panelnav_shop']}" action="" />  
          18.   
          19. </t:panelNavigation2>  

           也可以動態(tài)地生成navigationMenuItem:

          Java代碼 復(fù)制代碼
          1. <t:panelNavigation2 id="nav1" layout="list" itemClass="mypage" activeItemClass="selected" openItemClass="selected" >  
          2.         <t:navigationMenuItems value="#{navigationMenu.panelNavigationItems}" />  
          3.     </t:panelNavigation2>  
          4.   
          5. panelNavigationItems方法:  
          6.   
          7. public List getPanelNavigationItems() {  
          8.         List menu = new ArrayList();  
          9.         // Products  
          10.         NavigationMenuItem products = getMenuNaviagtionItem("#{example_messages['panelnav_products']}"null);  
          11.         menu.add(products);  
          12.         products.add(getMenuNaviagtionItem("#{example_messages['panelnav_serach']}""#{navigationMenu.getAction2}"));  
          13.         products.add(getMenuNaviagtionItem("#{example_messages['panelnav_serach_acc']}""#{navigationMenu.getAction2}"));  
          14.         NavigationMenuItem item = getMenuNaviagtionItem("#{example_messages['panelnav_search_adv']}""#{navigationMenu.getAction2}");  
          15.         item.setActive(true);  
          16.         item.setOpen(true);  
          17.         item.setTarget("_blank");  
          18.         products.add(item);  
          19.         // Shop  
          20.         menu.add(getMenuNaviagtionItem("#{example_messages['panelnav_shop']}""#{navigationMenu.getAction2}"));  
          21.         // Corporate Info  
          22.         NavigationMenuItem corporateInfo = getMenuNaviagtionItem("#{example_messages['panelnav_corporate']}"null);  
          23.         menu.add(corporateInfo);  
          24.         corporateInfo.add(getMenuNaviagtionItem("#{example_messages['panelnav_news']}""#{navigationMenu.getAction2}"));  
          25.         item = getMenuNaviagtionItem("#{example_messages['panelnav_investor']}""#{navigationMenu.getAction3}");  
          26.         //item.setIcon("images/arrow-first.gif");  
          27.         item.setDisabled(true);  
          28.         corporateInfo.add(item);  
          29.         // Contact  
          30.         menu.add(getMenuNaviagtionItem("#{example_messages['panelnav_contact']}""#{navigationMenu.getAction2}"));  
          31.         // External Link  
          32.         item = getMenuNaviagtionItem("#{example_messages['panelnav_contact']}"null);  
          33.         item.setExternalLink("#{example_messages['external_link']}");  
          34.         item.setTarget("_blank");  
          35.         menu.add(item);  
          36.         return menu;  
          37.     }  

          posted on 2008-09-01 13:11 找個美女做老婆 閱讀(666) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           

          導(dǎo)航

          統(tǒng)計

          公告

          本blog已經(jīng)搬到新家了, 新家:www.javaly.cn
           http://www.javaly.cn

          常用鏈接

          留言簿(6)

          隨筆檔案

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 新昌县| 东乡族自治县| 晋中市| 图们市| 达州市| 红原县| 昌吉市| 常山县| 建昌县| 安徽省| 天镇县| 望奎县| 桦甸市| 乐都县| 泰宁县| 贵州省| 张家口市| 彭州市| 孝义市| 外汇| 晴隆县| 临澧县| 渭源县| 赫章县| 资溪县| 内乡县| 冷水江市| 青海省| 红原县| 新巴尔虎左旗| 芜湖市| 龙井市| 和平县| 临澧县| 新巴尔虎右旗| 达孜县| 六安市| 三河市| 南江县| 额敏县| 泽库县|