Requirement Constraints

  • Subscribe to our RSS feed.
  • Twitter
  • StumbleUpon
  • Reddit
  • Facebook
  • Digg

Tuesday, 6 November 2012

Load Tab box Content on Demand Using MVVM

Posted on 09:40 by Unknown

ZK Version : 6.5.0 CE

In this post, let us see how we can load individual ZUL File on each tab box content
Step : 1
First let us create individual files.

Product1.zul file
   1: <?page title="Main Menu" contentType="text/html;charset=UTF-8"?>
   2: <zk>
   3:     <label value="Product 1 Information goes here" style="color: #696569; font-size : 24px; font-weight: bold;" />
   4: </zk>

Product2.zul file

   1: <?page title="Main Menu" contentType="text/html;charset=UTF-8"?>
   2: <zk>
   3:     <label value="Product 2 Information goes here" style="color: #696569; font-size : 24px; font-weight: bold;" />
   4: </zk>

Product3.zul file

   1: <?page title="Main Menu" contentType="text/html;charset=UTF-8"?>
   2: <zk>
   3:     <label value="Product 3 Information goes here" style="color: #696569; font-size : 24px; font-weight: bold;" />
   4: </zk>

Product4.zul file

   1: <?page title="Main Menu" contentType="text/html;charset=UTF-8"?>
   2: <zk>
   3:     <label value="Product 4 Information goes here" style="color: #696569; font-size : 24px; font-weight: bold;" />
   4: </zk>

Step : 2Now let us create our main page as follows
   1: <zk>

   2:     <window id="mainpage" title=" " width="47%" height="78%"
   3:         border="normal" minimizable="false" mode="modal" maximizable="false"
   4:         viewModel="@id('vm') @init('appVMS.mainPageVM')" closable="true"
   5:         apply="org.zkoss.bind.BindComposer">
   6:         <separator />
   7:         <tabbox width="100%" sclass="mainmenu">
   8:             <tabs id="tabs">
   9:                 <tab label="Product 1" id="product1" />
  10:                 <tab label="Product 2" id="product2"
  11:                     onSelect="@command('showzulfile', zulFileName='product2.zul', target=self.linkedPanel)" />

  12:                 <tab label="Product 3" id="product3"
  13:                     onSelect="@command('showzulfile', zulFileName='product3.zul', target=self.linkedPanel)" />
  14:                 <tab label="Product 4" id="product4"
  15:                     onSelect="@command('showzulfile', zulFileName='product4.zul', target=self.linkedPanel)" />
  16:             </tabs>
  17:             <tabpanels>
  18:                 <tabpanel>
  19:                     <include mode="defer" src="product1.zul" />
  20:                 </tabpanel>
  21:                 <tabpanel></tabpanel>
  22:                 <tabpanel></tabpanel>
  23:                 <tabpanel></tabpanel>
  24:             </tabpanels>
  25:         </tabbox>
  26:     </window>

  27: </zk>
Step : 3Now let us create our main page View Model file  as follows

   1: package appVMS;

   2:  
   3: import org.zkoss.bind.annotation.AfterCompose;
   4: import org.zkoss.bind.annotation.BindingParam;
   5: import org.zkoss.bind.annotation.Command;
   6: import org.zkoss.bind.annotation.ContextParam;
   7: import org.zkoss.bind.annotation.ContextType;
   8: import org.zkoss.zk.ui.Component;
   9: import org.zkoss.zk.ui.Executions;
  10: import org.zkoss.zk.ui.select.Selectors;
  11: import org.zkoss.zul.Tabpanel;
  12:  

  13: public class mainPageVM {
   

  15:     @AfterCompose
  16:     public void initSetup(@ContextParam(ContextType.VIEW) Component view) {
  17:         Selectors.wireComponents(view, this, false);
  18:     }

  19:  

  20:     @Command
  21:     public void showzulfile(@BindingParam("zulFileName") String zulFileName,
  22:             @BindingParam("target") Tabpanel panel ) {  23:  

  24:         if (panel != null && panel.getChildren().isEmpty())
  25:         {
  26:             Executions.createComponents(zulFileName, panel, null);
  27:         }
  28:     }

  29: }

Now you can run the mainpage.zul and check the output

image




 



Email ThisBlogThis!Share to XShare to Facebook
Posted in ZK Calling Another ZUL | No comments
Newer Post Older Post Home

0 comments:

Post a Comment

Subscribe to: Post Comments (Atom)

Popular Posts

  • ZK Example for inline Editing with Add New and Delete
    I am quite impressed on this demo from ZK . But adding new record and delete existing record is missing as part of typical CRUD. So i thoug...
  • EDI 5010 Documentation 837 Professional - Loop 2010BB Payer Name
    2010BB Payer Name          In this loop, all the information will be taken from Insurance master screen. Take a look of our sample screen...
  • EDI 5010 Documentation–837 - BHT - Beginning of Hierarchical Transaction
    BHT – Beginning of Hierarchical Transaction Loop Seg ID Segment Name Format Length Ref# Req Value   BHT Beginning of Hier...
  • Hibernate Validator Example 2
    In this example, we will see some more validation constraints such as @email, @past, @length, etc. And also we will also define custom error...
  • ZK Passing Parameter between two files using MVVM–Part 1
    Overview This is the first series of articles about Passing parameter between two zul files using MVVM Design pattern .This article will fo...
  • MVVM Command annotation and Notify change example
    Here is an example, how to pass parameter on a zul through MVVM Command binding annotation. ZK URL http://books.zkoss.org/wiki/ZK%20Develo...
  • History of Present Illness
    HPI - One of the main component of Clinical History. What is an HPI ? The history of present illness (HPI) is a chronological description...
  • Patient Demographics
    Patient browse (search) is the key element for any EMR / PMS Software. In my past 15 years experience, i involved more than 5 times in desig...
  • ViewModel Class Java Annotation @Init, @NotifyChange, @Command
    In following sections we'll list all syntaxes that can be used in implementing a ViewModel and applying ZK bind annotation. The ZK binde...
  • Good Website Design Links
    Form Design Label Placement in Forms International Address Fields in Web Forms 40 Eye-Catching Registration Pages blog-comment-form-...

Categories

  • Billing Process
  • C Workbook
  • C++ Workbook
  • Eclipse Tips
  • EDI 5010
  • EMR Appointment Features
  • EMR Labs Stuff
  • EMR PMS Links
  • EMR Use cases
  • EMR Vital Sign
  • Good Website Design
  • Hibernate Criteria Queries
  • Hibernate Introduction
  • Hibernate Introduction Setup
  • Hibernate Mapping
  • Hibernate POC
  • Hibernate Validator
  • Hibernate–Java Environment setup
  • HPI
  • Java
  • Maven
  • MU Certification
  • NPI
  • PQRS
  • Practice Management System
  • Spring Security
  • Tech Links
  • Today Tech Stuff
  • zk
  • ZK Hibernate
  • ZK 5 Databinding
  • ZK Application
  • ZK Calling Another ZUL
  • ZK CheckBox
  • ZK CreateComponents
  • ZK CSS
  • ZK extended Components
  • ZK Foreach
  • ZK Forum Posts
  • ZK Framework
  • ZK Hibernate Setup
  • ZK ID Space
  • ZK Include
  • ZK Installation
  • ZK iReport
  • ZK Layout
  • ZK Listitem Pagination
  • ZK Message Box
  • ZK MVC
  • ZK MVC Combox Box
  • ZK MVC CRUD Examples
  • ZK MVC Listbox
  • ZK MVVM
  • ZK MVVM Combo
  • ZK MVVM CRUD
  • ZK MVVM ListBox
  • ZK Spring
  • ZK TextBox

Blog Archive

  • ►  2013 (105)
    • ►  December (3)
    • ►  September (7)
    • ►  August (13)
    • ►  July (1)
    • ►  June (11)
    • ►  May (3)
    • ►  April (14)
    • ►  March (19)
    • ►  February (21)
    • ►  January (13)
  • ▼  2012 (177)
    • ►  December (1)
    • ▼  November (13)
      • Spring Security hello world example
      • ZK Grid CSS
      • Maven Commands
      • Maven m2e Integration for Eclipse
      • Tabbed Dialog Form - 2
      • Tabbed Dialog Form - 1
      • Navigation Menu
      • ZK Vertical Menu CSS
      • Load Tab box Content on Demand Using MVVM
      • ZK Forum Posts
      • ZK MVVM CRUD Without DB Connection - Part 7
      • ZK Form Design–CRUD Screen Example
      • Form Sample : Search Screen
    • ►  October (19)
    • ►  September (24)
    • ►  August (26)
    • ►  July (6)
    • ►  June (37)
    • ►  May (30)
    • ►  April (16)
    • ►  March (1)
    • ►  January (4)
  • ►  2011 (5)
    • ►  December (1)
    • ►  November (1)
    • ►  July (1)
    • ►  June (1)
    • ►  April (1)
  • ►  2010 (1)
    • ►  September (1)
Powered by Blogger.

About Me

Unknown
View my complete profile