2008年9月30日 星期二

XUL技巧之文本的省略号模式

XUL中,显示单行文本有两种方式,使用label元素,或者使用value赋值的description元素。不管使用哪种方式,如果文本长度超过了容器的宽度,超长的部分就显示不出来。这样就会给用户一种错觉,以为内容只有这么长。其实我们可以更加智能一些,就是把超长的部分用省略号代替,显示在结尾,这样用户一看就知道后面还有内容。

省略号模式的基本格式如下:
<label value="一行很长的文本内容" crop="end" />

放在水平顺序的box(比如hbox)中要注意加flex属性:
<hbox>
<label value="一行很长的文本内容" flex="1" crop="end" />
</hbox>

放在垂直顺序的box(比如vbox)中不需要加flex属性,例子就不给了。

上面例子中的label元素均可以替换成description元素,最后的效果是一样的。话说label和description就是别名,用label也可以实现description的两种效果:自动换行和多行显示,可以参考这两篇《XUL技巧之多行显示的description》和《XUL技巧之自动换行的description》,把例子中的description替换成label照样好用啊,这个真是才发现。@_@

0 评论: