5.1 文本
文本由CSkinTextView類來代表,繼承于CSkinView,支持CSkinView的所有屬性和方法。
布局文件如下:
<SkinDialog DefaultWidth="400" DefaultHeight="300" SysButton="CLOSE" Icon="128" Caption="IDS_CONTROL_SHOW1" Animation="SizeChange" EscCloseDialog="true">
<SkinTextView Id="1" FontColor="ID_COLOR_TEXT" Text="IDS_CONTROL_SHOW_TEXT1" AlignParentLeft="30" AlignParentRight="30" AlignParentTop="45" LayoutHeight="24" FontStyle="ID_FONT_NORMAL"/>
<SkinTextView Id="1" FontColor="ID_COLOR_TEXT" Text="IDS_CONTROL_SHOW_TEXT2" AlignParentLeft="30" AlignParentTop="100" AlignParentRight="30" LayoutHeight="72" FontStyle="ID_FONT_NORMAL" MultiLine="true"/>
<SkinTextView Id="1" FontColor="ID_COLOR_RED" Text="IDS_CONTROL_SHOW_TEXT3" AlignParentLeft="30" AlignParentTop="200" LayoutHeight="72" LayoutWidth="275" FontStyle="ID_FONT_NORMAL" MultiLine="true"/>
</SkinDialog>
下面是CSkinTextView類特有的XML屬性和相關方法:
5.1.1設置文本是單行還是多行
- 通過XML屬性控制如下:
MultiLine="true"
- 通過C++程序代碼調用方法控制如下:
void SetMultiLine(BOOL bMultiLine);
5.1.2設置文本顏色
- 通過XML屬性控制如下:
FontColor="ID_COLOR_RED"
- 通過C++程序代碼調用方法控制如下:
void SetFontColor(const tstring& strFontColor);
5.1.3設置文本字體
- 通過XML屬性控制如下:
FontStyle="ID_FONT_NORMAL"
- 通過C++程序代碼調用方法控制如下:
void SetFontStyle(const tstring& strFontStyle);
5.1.4設置文本水平對齊方式
- 通過XML屬性控制如下:
HorzAlignment="Left"
- 通過C++程序代碼調用方法控制如下:
void SetHorzAlignment(StringAlignment alignment);
5.1.5設置文本垂直對齊方式
- 通過XML屬性控制如下:
VertAlignment="Center"
- 通過C++程序代碼調用方法控制如下:
void SetVertAlignment(StringAlignment alignment);
5.1.6單行文本太長時,自動在結尾處加“...”
- 通過XML屬性控制如下:
AutoLayout="true"
- 通過C++程序代碼調用方法控制如下:
void SetAutoLayout(BOOL bAutoLayout);
5.2 超鏈
文本由CSkinHyperlink類來代表,繼承于CSkinTextView,支持CSkinTextView的所有屬性和方法。
布局文件如下:
<SkinDialog DefaultWidth="400" DefaultHeight="300" SysButton="CLOSE" Icon="128" Caption="IDS_CONTROL_SHOW3" Animation="SizeChange">
<SkinHyperlink LayoutWidth="WrapContent" LayoutHeight="30" Text="IDS_CONTROL_SHOW_TEXT4" AlignParentHorizontalCenter="0" AlignParentTop="50"/>
<SkinHyperlink LayoutWidth="120" LayoutHeight="30" Text="IDS_CONTROL_SHOW_TEXT5" AlignParentHorizontalCenter="0" AlignParentTop="125"/>
<SkinHyperlink LayoutWidth="WrapContent" LayoutHeight="30" Text="IDS_CONTROL_SHOW_TEXT6" URL="www.baidu.com" AlignParentHorizontalCenter="0" AlignParentTop="200"/>
</SkinDialog>
下面是CSkinHyperlink類特有的XML屬性和相關方法:
5.1.1設置超鏈激活狀態的字體
- 通過XML屬性控制如下:
HotFontStyle="ID_FONT_HYPERLINK"
- 通過C++程序代碼調用方法控制如下:
void SetHotFontStyle(const tstring& strFontStyle);
5.1.2設置超鏈激活狀態字體的顏色
- 通過XML屬性控制如下:
HotFontColor="ID_COLOR_HYPERLINK"
- 通過C++程序代碼調用方法控制如下:
void SetHotFontColor(const tstring& strFontColor);
5.1.2設置超鏈的鏈接URL
- 通過XML屬性控制如下:
URL="www.baidu.com"
- 通過C++程序代碼調用方法控制如下:
void SetUrl(const tstring& strUrl);
單擊超鏈時,如果超鏈是URL,則直接用系統默認瀏覽器打開這個URL;否則,給超鏈所在窗口發送WM_COMMAND消息。
5.3 線條
文本由CSkinLine類來代表,繼承于CSkinView,支持CSkinView的所有屬性和方法。
布局文件如下:
<SkinDialog DefaultWidth="400" DefaultHeight="300" SysButton="CLOSE" Icon="128" Caption="IDS_CONTROL_SHOW16" Animation="SizeChange">
<SkinLine LayoutHeight="1" AlignParentLeft="10" AlignParentRight="10" AlignParentTop="100" Color="ID_COLOR_DEFAULT12"/>
<SkinLine LayoutHeight="1" AlignParentLeft="10" AlignParentRight="10" AlignParentTop="150" Color="ID_COLOR_DEFAULT12"/>
<SkinLine LayoutHeight="1" AlignParentLeft="10" AlignParentRight="10" AlignParentTop="151" Color="ID_COLOR_DEFAULT12"/>
<SkinLine LayoutHeight="1" AlignParentLeft="10" AlignParentRight="10" AlignParentTop="200" Color="ID_COLOR_DEFAULT12"/>
<SkinLine LayoutHeight="1" AlignParentLeft="10" AlignParentRight="10" AlignParentTop="201" Color="ID_COLOR_DEFAULT12"/>
<SkinLine LayoutHeight="1" AlignParentLeft="10" AlignParentRight="10" AlignParentTop="202" Color="ID_COLOR_DEFAULT12"/>
</SkinDialog>
下面是CSkinLine類常用的XML屬性和相關方法:
5.3.1設置線條風格
- 通過XML屬性控制如下:
DashStyle="Solid"
- 通過C++程序代碼調用方法控制如下:
void SetDashStyle(DashStyle dashStyle);
5.3.2設置線條顏色
- 通過XML屬性控制如下:
Color="ID_COLOR_RED"
- 通過C++程序代碼調用方法控制如下:
void SetColor(const tstring& strColor);
5.3.3設置顏色漸變線條開始顏色
- 通過XML屬性控制如下:
StartColor="ID_COLOR_BLACK"
- 通過C++程序代碼調用方法控制如下:
void SetStartColor(const tstring& strColor);
5.3.4設置顏色漸變線條結束顏色
- 通過XML屬性控制如下:
EndColor="ID_COLOR_WHITE"
- 通過C++程序代碼調用方法控制如下:
void SetEndColor(const tstring& strColor);
5.4 圖片框
圖片框分為顯示單幀圖片的普通圖片框和顯示多幀圖片的加強圖片框。圖片內容可以加載資源文件,也可以加載保存在硬盤任意位置的圖片。
5.4.1普通圖片框
普通圖片框由CSkinImageView類來代表,繼承于CSkinView,支持CSkinView的所有屬性和方法。
CSkinImageView可以顯示普通靜態圖片,也可以顯示Gif動畫圖片。
布局文件如下:
<SkinDialog DefaultWidth="400" DefaultHeight="300" SysButton="CLOSE" Icon="128" Caption="IDS_CONTROL_SHOW6" Animation="SizeChange">
<SkinImageView LayoutWidth="WrapContent" LayoutHeight="WrapContent" Image="Image.png" AlignParentHorizontalCenter="0" AlignParentVerticalCenter="0"/>
</SkinDialog>
布局文件如下:
<SkinDialog DefaultWidth="400" DefaultHeight="300" SysButton="CLOSE" Icon="128" Caption="IDS_CONTROL_SHOW7" Animation="SizeChange">
<SkinImageView Id="1" LayoutWidth="WrapContent" LayoutHeight="WrapContent" Image="Image.gif" AutoPlay="true" AlignParentHorizontalCenter="0" AlignParentVerticalCenter="0"/>
</SkinDialog>
下面是CSkinImageView類特有的XML屬性和相關方法:
5.4.1.1設置圖片框顯示的Gif動畫是否需要自動播放
- 通過XML屬性控制如下:
AutoPlay="true"
- 通過C++程序代碼調用方法控制如下:
void SetAutoPlay(BOOL bAutoPlay);
如果圖片框設置為自動播放,則Gif動畫會在初始化完成之后自動播放。
5.4.1.2設置圖片框是否可以點擊
- 通過XML屬性控制如下:
ClickAble="true"
- 通過C++程序代碼調用方法控制如下:
void SetClickAble(BOOL bClickAble);
如果圖片框設置為可點擊,單擊圖片框時,SkinUI會給圖片框所在窗口發送WM_COMMAND消息。
5.4.1.3設置圖片框顯示資源圖片
- 通過XML屬性控制如下:
Image="Finish.png"
- 通過C++程序代碼調用方法控制如下:
virtual void SetImage(const tstring& strImage);
5.4.1.4設置圖片框顯示保存在硬盤任意位置的圖片
- 無法通過XML屬性控制
- 通過C++程序代碼調用方法控制如下:
virtual void LoadImage(const tstring& strImage);
5.4.2加強圖片框
加強圖片框由CSkinImageViewEx類來代表,繼承于CSkinView,支持CSkinView的所有屬性和方法。
CSkinImageViewEx用來顯示將動畫的多幀從左到右依次排列的多幀動畫圖片資源。
布局文件如下:
<SkinDialog DefaultWidth="400" DefaultHeight="300" SysButton="CLOSE" Icon="128" Caption="IDS_CONTROL_SHOW8" Animation="SizeChange">
<SkinImageViewEx Id="1" LayoutWidth="WrapContent" LayoutHeight="WrapContent" Image="MultiImage.png" TotalFrame="17" AutoPlay="true" AlignParentHorizontalCenter="0" AlignParentVerticalCenter="0"/>
</SkinDialog>
下面是CSkinImageViewEx類特有的XML屬性和相關方法:
5.3.2.1設置圖片框顯示的多幀動畫圖片是否需要自動播放
- 通過XML屬性控制如下:
AutoPlay="true"
- 通過C++程序代碼調用方法控制如下:
void SetAutoPlay(BOOL bAutoPlay);
如果圖片框設置為自動播放,則多幀動畫圖片會在初始化完成之后自動播放。
5.4.2.2設置圖片框是否可以點擊
- 通過XML屬性控制如下:
ClickAble="true"
- 通過C++程序代碼調用方法控制如下:
void SetClickAble(BOOL bClickAble);
如果圖片框設置為可點擊,單擊圖片框時,SkinUI會給圖片框所在窗口發送WM_COMMAND消息。
5.4.2.3設置圖片框顯示資源圖片
- 通過XML屬性控制如下:
Image="Loading.png"
- 通過C++程序代碼調用方法控制如下:
virtual void SetImage(const tstring& strImage);
5.4.2.4設置圖片播放下一幀的時間間隔
- 通過XML屬性控制如下:
Elapse="50"
- 通過C++程序代碼調用方法控制如下:
void SetElapse(LONG nInterval);