16.其它
16.1 关于字体
字体资源统一在<Fonts>下列出,其顺序相当于就是其ID号,顺序从0开始计数。<Properties>或<Col>要使用规定的字体,只要通过FontIndex指定该ID即可.
字体的定义和使用规则如下:
1.如果<Fonts>中某行字体在本机不存在,Treelist将自动使用下一行的字体,直到找到为止,否则将采用操作系统默认字体;
2.如果字体中FaceName="Default"或FaceName="System", 或没有FaceName,则表示操作系统的默认字体;
例如:
<Fonts>
<Font faceName="微软雅黑" size="-13"/>
<Font faceName="宋体" size="14"/>
</Fonts>
表示默认采用微软雅黑字体,如果是WindowsXP(未安装微软雅黑字体),将自动使用下一行的宋体.
宋体在 Windows XP 操作系统中的最佳尺寸是: size=14
16.2 关于列宽
<col>中的 “Width” 属性是用于指定列宽的,它的用法比较灵活,其含义可是是绝对宽度、窗口宽度的百分比、剩余宽度的分配比例、以及自动适配列标题. 例如如下的XML描述文件:
<cols>
<col id="n1" width="50%">标题1</col> //百分比
<col id="n2" width="100">标题2</col> //绝对数
<col id="n3" width="0.3">标题3</col> //比例因子
<col id="n4" width="0.4">标题4</col> //比例因子
</cols>
展现的效果如下:
请注意“比例因子”的含义和“百分比”是有区别的,“百分比”是指占窗口区域宽度的百分比,“比例因子”则用于分配剩余宽度,通常是在多个比例因子之间求得宽度比例。
如果只有一个列采用了比例因子,其含义不言自明,例如:
<cols>
<col id="n1" width="50%">标题1</col>
<col id="n2" width="100">标题2</col>
<col id="n3" width="0.3">标题3</col>
</cols>
展现的效果如下:
为了避免按百分比或按比例分配到的绝对宽度太小,您还可以进一步指定“最小宽度”: "minWidth"属性.
此外,将width写成 width="fitHeader" (或"header"), 能让列宽自动伸展到刚好能显示下表头文字。例如:
<cols>
<col id="n1" width="fitHeader">标题1</col>
<col id="n2" width="fitHeader">标题2文字</col>
<col id="n3">标题3</col>
</cols>
展现的效果如下:
当您用鼠标拖动过列宽后,该列的百分比和比例因子随即失效.
最后,在<Properties>中还有一个和列宽有关的属性:isAutoFitWidth,isAutoFitWidth的有效等级最高,当isAutoFitWidth="true"时,百分比和比例因子统统无效。