基于(http://directui.googlecode.com/)最新版r62进行分析,对于未使用的控件属性未做分析
属性
一、主窗口属性(XML中标签'Window')
size 窗口的大小
sizebox
caption 标题栏的宽度高度
roundcorner 窗口的圆角矩形的半径
mininfo
showdirty 是否用矩形框标示需要重画的区域
二、公共属性('Window'标签和第一个容器标签间的内容)
Image 图片的来源以及图片文件的名称,一般是用于html方式文字的标签{i}
Font 字体配置方案,对应CLabelUI的font属性
Default 指定Button、VScrollBar、HScrollBar的几种状态图片属性
三、控件(容器)属性
CControlUI
1 float 和pos组合使用,根据所处容器窗口坐标计算其窗口坐标。如果不指定此属性则背景图片会拉伸到整个容器,文字会水平居左垂直居中显示
2 pos 同上
3 padding 控件文字显示位置缩进距离
4 bkcolor 第一种背景颜色,如果指定第二种背景颜色则背景为垂直方向的渐变色
5 bkcolor2 第二种背景颜色
6 bordercolor 边框线颜色
7 bordersize 边框线尺寸
8 bkimage 背景图片
9 width
10 height
11 minwidth
12 minheight
13 maxwidth
14 maxheight
15 name 控件标识,在同一窗口内具有唯一性
16 text 显示文字
17 tooltip tip信息
18 userdata 扩展用户数据
19 enabled 是否激活
20 mouse 是否响应鼠标消息,如果为false则由其最近的左兄弟或父亲结点处理
21 visible 是否可见
22 shortcut
23 relativepos 子控件(容器)相对于父控件(容器)的客户区坐标
CContainerUI -> CControlUI
1 inset 容器内的控件的可显示区域要上下左右各缩进多少;如果容器嵌套容器则用于指定子容器相对父容器的偏移
2 mousechild
3 vscrollbar 垂直滚动条的几种状态图片属性
4 hscrollbar 水平滚动条的几种状态图片属性
5 childpadding
CHorizontalLayoutUI -> CContainerUI
1 sepwidth
2 sepimm
CTileLayoutUI -> CContainerUI
1 columns 容器内控件按几列显示,会自动根据列数计算行数
CLabelUI -> CControlUI
1 align 文字对齐方式
2 font 文字字体属性
3 textcolor 文字颜色
4 disabledtextcolor 非激活状态下文字颜色
5 textpadding
6 showhtml html方式显示文字,可参考DrawHtmlText函数说明
7 fitallArea 状态图片是否需要填充整个区域,false可以用来画checkbox & radio box
8 tipimage tip的背景图片
CButtonUI -> CLabelUI -> CControlUI
1 normalimage 正常状态图片
2 hotimage 高亮状态图片
3 pushedimage 按下状态图片
4 focusedimage 获得焦点状态图片
5 disabledimage 非激活状态图片
6 disabled
COptionUI -> CButtonUI -> CLabelUI -> CControlUI
1 group 为true则表示是多个option组合使用,且所有option必须包含在容器内。
2 selected 初始状态为选中,如果指定了group属性则当前选中项只有一个,而且属性字符中group要位于selected前面。
3 selectedimage 选中状态图片
4 foreimage checkbox或radio box选中时前景小图片
5 selectedtextcolor 文字颜色
CTextUI -> CLabelUI -> CControlUI
CProgressUI -> CLabelUI -> CControlUI
1 fgimage 前景进度条图片,一般是根据百分比做拉伸处理
2 hor 为true则水平显示
3 min 最小值
4 max 最大值
5 value 当前值
CSliderUI -> CProgressUI -> CLabelUI -> CControlUI
1 thumbimage 滑标正常状态图片
2 thumbhotimage 滑标高亮状态图片
3 thumbpushedimage 滑标按下状态图片
4 thumbsize 滑标大小
注:如果需要实现带轨道的滑动条控制,则需要指定父类CControlUI的bkimage属性;如果要实现计数,则需要指定父类CProgressUI的min/max/value属性
CEditUI -> CLabelUI
1 readonly 只读属性
2 password 密文"*"显示方式
3 normalimage 正常状态图片
4 hotimage 高亮状态图片
5 focusedimage 获得焦点状态图片
6 disabledimage 非激活状态图片
7 multiline 多行属性
8 maxchar 是大可输入字符数
CComboUI -> CContainerUI -> CControlUI
1 textpadding
2 normalimage
3 hotimage
4 pushedimage
5 focusedimage
6 disabledimage
7 itemfont
8 itemalign
9 itemtextpadding
10 itemtextcolor
11 itembkcolor
12 itemimage
13 itemselectedtextcolor
14 itemselectedbkcolor
15 itemselectedimage
16 itemhottextcolor
17 itemhotbkcolor
18 itemhotimage
19 itemdisabledtextcolor
20 itemdisabledbkcolor
21 itemdisabledimage
22 itemlinecolor
23 itemshowhtml
CScrollbarUI -> CControlUI
1 button1normalimage
2 button1hotimage
3 button1pushedimage
4 button1disabledimage
5 button2normalimage
6 button2hotimage
7 button2pushedimage
8 button2disabledimage
9 thumbnormalimage
10 thumbhotimage
11 thumbpushedimage
12 thumbdisabledimage
13 railnormalimage
14 railhotimage
15 railpushedimage
16 raildisabledimage
17 bknormalimage
18 bkhotimage
19 bkpushedimage
20 bkdisabledimage
21 hor
22 linesize
23 range
24 value
CListUI -> CVerticalLayoutUI -> CContainerUI
1 header
2 headerbkimage
3 expanding
4 multiexpanding
5 itemfont
6 itemalign
7 itemtextpadding
8 itemtextcolor
9 itembkcolor
10 itemimage
11 itemselectedtextcolor
12 itemselectedbkcolor
13 itemselectedimage
14 itemhottextcolor
15 itemhotbkcolor
16 itemhotimage
17 itemdisabledtextcolor
18 itemdisabledbkcolor
19 itemdisabledimage
20 itemlinecolor
21 itemshowhtml
CListHeaderItemUI -> CControlUI
1 dragable
2 sepwidth
3 align
4 font
5 textcolor
6 showhtml
7 normalimage
8 hotimage
9 pushedimage
10 focusedimage
11 sepimage
CListElementUI -> CControlUI
1 selected
CListExpandElementUI -> CListTextElementUI -> CListLabelElementUI -> CListElementUI -> CControlUI
1 expander
2 hideself
CListContainerElementUI -> CContainerUI
1 selected