7.1 进度条
进度条由CSkinProgress类来代表,继承于CSkinView,支持CSkinView的所有属性和方法。
通过给进度条设置不同的图片资源,可以得到各种形态的进度条。
![](https://img.haomeiwen.com/i1869308/8e803a318201f6e4.png)
布局文件如下:
<SkinDialog DefaultWidth="400" DefaultHeight="300" SysButton="CLOSE" Icon="128" Caption="IDS_CONTROL_SHOW13" Animation="SizeChange">
<SkinProgress LayoutHeight="19" AlignParentLeft="10" AlignParentRight="10" AlignParentVerticalCenter="0" Range="100" Pos="50" Image="Progress.png"/>
</SkinDialog>
下面是CSkinProgress类特有的XML属性和相关方法:
7.1.1设置进度条的最大进度
- 通过XML属性控制如下:
Range="100"
- 通过C++程序代码调用方法控制如下:
void SetRange(uint64 nRange);
7.1.2设置进度条的当前进度
- 通过XML属性控制如下:
Pos="1"
- 通过C++程序代码调用方法控制如下:
void SetPos(uint64 nPos);
7.2 分割条
分割条由CSkinSplitter类来代表,继承于CSkinView,支持CSkinView的所有属性和方法。
通过给分割条设置不同的图片资源,可以得到各种形态的进度条。
![](https://img.haomeiwen.com/i1869308/817410ec2d97ae01.png)
布局文件如下:
<SkinDialog DefaultWidth="400" DefaultHeight="300" SysButton="CLOSE" Icon="128" Caption="IDS_CONTROL_SHOW14" Animation="SizeChange">
<SkinSplitter LayoutHeight="3" AlignParentLeft="10" AlignParentRight="10" AlignParentVerticalCenter="0" Min="50" Max="250" Image="VSplitter.png"/>
</SkinDialog>
下面是CSkinSplitter类特有的XML属性和相关方法:
7.2.1设置分割条是否为水平分隔条
- 通过XML属性控制如下:
HorzSplitter="true"
- 通过C++程序代码调用方法控制如下:
void SetHorzSplitter(BOOL bHorzSplitter);
7.2.2设置分隔条的移动范围
- 通过XML属性控制如下:
Min="100" Max="1000"
- 通过C++程序代码调用方法控制如下:
void SetMoveRange(LONG nMin, LONG nMax);
7.3 滚动条
滚动条由CSkinScrollBar类来代表,继承于CSkinView,支持CSkinView的所有属性和方法。通过给滚动条设置不同的布局文件,可以得到不同形态的滚蛋条。例如:可以设置滚动条只有滚动滑块而没有滚动箭头。
- 滚动条可以单独存在
<SkinScrollBarId="1125" LayoutHeight="21" AlignParentLeft="15" AlignParentRight="15" AlignParentVerticalCenter="0" Layout="VScrollBar.xml"/>
- 滚动条也可以搭配列表框:
<SkinListView AlignParentLeft="1" AlignParentRight="1" AlignParentTop="1" AlignParentBottom="1" VScrollBar="VScrollBar.xml">
- 滚动条也可以搭配编辑框:
<SkinEditView Image="Edit.png" MultiLine="true" AlignParentLeft="8" AlignParentRight="8" AlignParentTop="38" AlignParentBottom="8" VScrollBar="VScrollBar.xml"/>
- 垂直滚动条布局文件VScrollBar.xml如下:
<SkinVerticalLayout LayoutWidth="FillParent" LayoutHeight="FillParent">
<ScrollSlider Id="100001" LayoutWidth="FillParent" LayoutHeight="FillParent" Image="VScrollSlider.png">
<ScrollThumb Id="100002" Image="VScrollThumb.png"/>
</ScrollSlider>
</SkinVerticalLayout>
![](https://img.haomeiwen.com/i1869308/ac507a62f44da2ba.png)
![](https://img.haomeiwen.com/i1869308/196d8ac1ee19b4a2.png)
![](https://img.haomeiwen.com/i1869308/775cd630691130c2.png)
下面是CSkinScrollBar类特有的XML属性和相关方法:
7.3.1设置滚动条的滚动视图
- 通过C++程序代码调用方法控制如下:
void SetScrollView(CSkinScrollView* pView);
7.3.2设置滚动条信息
- 通过C++程序代码调用方法控制如下:
void SetScrollInfo(const ScrollInfo& info);
7.3.2设置滚动条滑块位置
- 通过C++程序代码调用方法控制如下:
void SetScrollPos(LONG nPos);
7.4 滑块
滑块由CSkinSlider类来代表,继承于CSkinView,支持CSkinView的所有属性和方法。
通过给滑块设置不同的图片资源,可以得到各种形态的进度条。
![](https://img.haomeiwen.com/i1869308/8e7582d29008c8ae.png)
布局文件如下:
<SkinDialog DefaultWidth="400" DefaultHeight="300" SysButton="CLOSE" Icon="128" Caption="IDS_CONTROL_SHOW17" Animation="SizeChange">
<SkinSlider Id="1125" LayoutHeight="21" AlignParentLeft="15" AlignParentRight="15" AlignParentVerticalCenter="0" Range="100" Pos="50" Image="AlphaSliderBkg.png" ThumbImage="AlphaSliderThumb.png"/>
</SkinDialog>
下面是CSkinSlider类特有的XML属性和相关方法:
7.4.1设置滑块的移动范围
- 通过XML属性控制如下:
Range="100"
- 通过C++程序代码调用方法控制如下:
void SetRange(LONG nRange);
7.4.2设置滑块的当前位置
- 通过XML属性控制如下:
Pos="1"
- 通过C++程序代码调用方法控制如下:
void SetPos(LONG nPos);
7.4.3设置滑块的图像
- 通过XML属性控制如下:
ThumbImage="SliderThumb.png"
- 通过C++程序代码调用方法控制如下:
void SetThumbImage(uint64 nPos);
网友评论