Employment/Purpose

A label component represents a piece of text. A pure text on the zul will be automatically converted to a label.

Example

 <window title="Label Demo" >
 <grid>
     <rows>
         <row>Label(normal): <label id="lb1"/></row>
         <row>Label(color): <label id="lb2" style="color:red"/></row>
         <row>Label(font): <label id="lb3" style="font-weight:bold"/></row>
         <row>Label(size): <label id="lb4" style="font-size:14pt"/></row>
         <row>Label(maxlength): <label id="lb5" maxlength="5"/></row>
         <row>Label(pre): <label id="lb6" pre="true"/></row>
         <row>input:
             <textbox id="txt" rows="2"><attribute name="onChange">
                     lb1.value=self.value;
                     lb2.value=self.value;
                     lb3.value=self.value;
                     lb4.value=self.value;
                     lb5.value=self.value;
                     lb6.value=self.value;
             </attribute></textbox>
         </row>
     </rows>
 </grid>
 </window>

You can control how a label is displayed with the style, pre and maxlength Properties.

For example, if you specify pre to be true, all white spaces, such as new line, space and tab, are preserved.

A label component represents a piece of text.

<window border="normal"> 
    Hello World
</window>

If you want to add an attribute to a label, it has to be written as follows:

<window border="normal">
    <label style="color: red" value="Hello World" />
</window>

Special Character

Since ZUML is XML, not HTML, so it doesn’t accept &nbsp;. However, you can use &#160; instead. For the whole list, please refer th List of XML and HTML character entity references.

Properties

Pre, Hyphen, Maxlength and Multiline

Removed Since 10.0 Hyphen is removed. Use CSS to achieve it.

since 5.0.0

You can control how a label is displayed using the pre, multiline and maxlength properties. For example, if you specify pre to be true, all white spaces, such as new lines, spaces and tabs, are preserved.

pre multiline maxlenth Description
true any any All white spaces are preserved, including new lines, spaces and tabs.
false true any New lines are preserved.
false false positive The label only show its value up to the length of “maxlength”.
false false 0 The label is displayed regularly.

<window border="normal" width="300px">
    <vbox id="result">
        <label id="lb1" pre="true"></label>
        <separator bar="true"/>
        <label id="lb2" multiline="false" />
        <separator bar="true"/>
        <label id="lb3" maxlength="10" />
        <zscript><![CDATA[
            lb1.value = "    this   thing   has   spaces.\nnext line.";
            lb2.value = "    this   thing   no   space.\nnext line.";
            lb3.value = "    this is more than 10 chars.";
        ]]></zscript>
    </vbox>
</window>

[For ZK3 users]

This displaying rule is slightly different in ZK3.

hyphen pre maxlenth Description
false false positive Truncated the characters that exceeds the specified
maxlength.      
true any positive If the length of a line exceeds maxlength, the line
is hyphenated.      
false true any maxlength is ignored.
any any 0 hyphen is ignored.

 
<window border="normal" width="300px">
    <vbox id="result">
    </vbox>
    <zscript><![CDATA[
        String[] s = {"this is 9", 
                        "this is ten more to show",
                        "this framework", 
                        "performance is everything"};
        for (int j = 0; j < s.length; ++j) {
            Label l = new Label(s[j]);
            l.maxlength = 9;
            l.hyphen = true;
            l.parent = result;
            Separator sep =  new Separator();
            sep.setBar(true);
            sep.parent = result;
        }
    ]]>
    </zscript>
</window>

The multiline property is similar to the pre property, except it only preserves new lines and white space at the beginning of each line.

Supported Events

Supported Children

*NONE