CButtonST 使用方法
来源:互联网 发布:电线传输网络信号原理 编辑:程序博客网 时间:2024/05/01 11:12
首先在你的工程中加入如下文件:
1.
BtnST.h
2.
BtnST.cpp
从v3.5版本开始,CButtonST支持使用BCMenu类创建菜单。为了能够使用BCMenu,你必须在 BtnST.h中加入下面二行:
1.
#define BTNST_USE_BCMENU
2.
#include "BCMenu.h"
当然,你也必须在你的工程文件中加入下面的头文件:
1.
BCMenu.h
2.
BCMenu.cpp
注意:当 BCMenu 使参数可用时,与用SetNenu的方法是不同的! 从v3.6版本开始, CbuttonST可以在特殊的按钮播放声音。为了能够让它播放声音要在 BtnST.h 中加入:
1.
#define BTNST_USE_SOUND
这样是为了使用SetSound 方法。用静态方法创建一个 CButtonST 用对话框编辑器中建一个标准的button,例如IDOK(你不需在自己动手创建),你可以用一个变量来创建这个button:
1.
CButtonST m_btnOk;
现在你可以把这个 button 和 CbuttonST 连接在一起。在你的基于对话框的程序,在OnInitDialog:
01.
// Call the base-class method
02.
CDialog::OnInitDialog();
03.
04.
// Create the IDOK button
05.
m_btnOk.SubclassDlgItem(IDOK,
this
);
06.
Or in your DoDataExchange:
07.
// Call the base method
08.
CDialog::DoDataExchange(pDX);
09.
10.
// Create the IDOK button
11.
DDX_Control(pDX, IDOK, m_btnOk);
用动态方法创建一个CButtonST 在人的程序中,为button创建一个变量。注意,这个变量的类型是指针:
1.
CButtonST* m_pbtnOk;
现在创建button。在你的基于对话框的程序,在OnInitDialog:
01.
// Call the base-class method
02.
CDialog::OnInitDialog();
03.
04.
// Create the IDOK button
05.
m_pbtnOk =
new
CButtonST;
06.
m_pbtnOk->Create(_T(
"&Ok"
),
07.
WS_CHILD | WS_VISIBLE | WS_GROUP | WS_TABSTOP,
08.
CRect(10, 10, 200, 100),
this
, IDOK);
09.
// Set the same font of the application
10.
m_pbtnOk->SetFont(GetFont());
记住销毁这个指针,否则将会导致内存泄漏.这个也可以容易的实现,例如,在你的类中销毁它:
1.
if
(m_pbtnOk)
delete
m_pbtnOk;
类的方法:
1.
SetIcon(
using
multi-size resources)
给你的button指定图标。任何本来就有的图标或位图将会被删除。
参数:
01.
// Parameters:
02.
// [IN] nIconIn
03.
// 图标资源的ID,当你的鼠标放在按钮上显示该图标.如果为空,则将删除任何图标。
04.
// [IN] nCxDesiredIn
05.
// 指定加载图标的宽度,像素
06.
// [IN] nCyDesiredIn
07.
// 指定加载图标的高度,像素
08.
// [IN] nIconOut
09.
// 图标资源的ID,当你的鼠标在不在按钮内时,显示图标.可以为空.
10.
// 如果指定这个参数的值为 BTNST_AUTO_GRAY (cast to int)第二个图标将从 nIconIn 自动地创建,
11.
// 同时改变灰度级.
12.
// 如果指定这个参数的值为 BTNST_AUTO_DARKER (cast to int)第二个图标将从 nIconIn 自动地创建,
13.
// 灰度级为它的25%的.
14.
// [IN] nCxDesiredOut
15.
// 指定加载图标的宽度,像素
16.
// [IN] nCyDesiredOut
17.
// 指定加载图标的高度,像素
18.
//
19.
// 返回值:
20.
// BTNST_OK
21.
// 函数成功执行
22.
// BTNST_INVALIDRESOURCE
23.
// 加载指定资源失败
24.
//
25.
DWORD
SetIcon(
int
nIconIn,
int
nCxDesiredIn,
int
nCyDesiredIn,
26.
int
nIconOut = NULL,
int
nCxDesiredOut = 0,
int
nCyDesiredOut = 0)
27.
28.
29.
SetIcon (
using
resources)
给你的button指定图标. 任何本来就有的图标或位图将会被删除.
01.
// Parameters:
02.
// [IN] nIconIn
03.
// 图标资源的ID,当你的鼠标放在按钮上显示该图标.如果为空,则将删除任何图标。
04.
// [IN] nIconOut
05.
// 图标资源的ID,当你的鼠标在不在按钮内时,显示图标.可以为空.
06.
// 如果指定这个参数的值为 BTNST_AUTO_GRAY (cast to int)第二个图标将从 nIconIn 自动地创建,
07.
// 同时改变灰度级。如果指定这个参数的值为 BTNST_AUTO_DARKER (cast to int)第二个图标将从
08.
// nIconIn 自动地创建,灰度级为它的25%的.
09.
//返回值:
10.
// BTNST_OK
11.
// 函数成功执行
12.
// BTNST_INVALIDRESOURCE
13.
// 加载指定资源失败
14.
//
15.
DWORD
SetIcon(
int
nIconIn,
int
nIconOut = NULL)
16.
17.
18.
SetIcon (
using
handles)
给你的button指定图标. 任何本来就有的图标或位图将会被删除.
01.
// Parameters:
02.
// [IN] hIconIn
03.
// 图标的句柄,鼠标放在按钮上显示该图标.如果为空,则将删除任何图标。.
04.
// [IN] hIconOut
05.
// 图标的句柄,当你的鼠标在不在按钮内时,显示图标.可以为空.
06.
// 如果指定这个参数的值为 BTNST_AUTO_GRAY (cast to int)第二个图标将从 nIconIn 自动地创建,
07.
// 同时改变灰度级。如果指定这个参数的值为 BTNST_AUTO_DARKER (cast to int)第二个图标将从
08.
nIconIn 自动地创建,灰度级为它的25%的.
09.
//返回值:
10.
// BTNST_OK
11.
// 函数成功执行
12.
// BTNST_INVALIDRESOURCE
13.
// 加载指定资源失败
14.
//
15.
DWORD
SetIcon(
HICON
hIconIn,
HICON
hIconOut = NULL)
16.
17.
18.
SetBitmaps (
using
resources)
给你的button指定位图. 任何本来就有的图标或位图将会被删除.
01.
// Parameters:
02.
// [IN] nBitmapIn
03.
// 位图资源的ID,当你的鼠标放在按钮上显示该位图.如果为空,则将删除任何位图.
04.
// [IN] crTransColorIn
05.
// 颜色(inside nBitmapIn)将被用于透明色.
06.
// [IN] nBitmapOut
07.
// 位图资源的ID,当你的鼠标在不在按钮内时,显示位图.可以为空
08.
// [IN] crTransColorOut
09.
// 颜色(inside nBitmapOut)将被用于透明色.
10.
11.
// 返回值:
12.
// BTNST_OK
13.
// 函数成功执行
14.
// BTNST_INVALIDRESOURCE
15.
// 加载指定资源失败
16.
// BTNST_FAILEDMASK
17.
// 创建mask bitmap失败
18.
//
19.
DWORD
SetBitmaps(
int
nBitmapIn,
20.
COLORREF
crTransColorIn,
21.
int
nBitmapOut = NULL,
22.
COLORREF
crTransColorOut = 0)
23.
24.
SetBitmaps (
using
handles)
给你的button指定位图. 任何本来就有的图标或位图将会被删除.
01.
// Parameters:
02.
// [IN] hBitmapIn
03.
// 位图资源的句柄,当你的鼠标放在按钮上显示该位图.如果为空,则将删除任何位图.
04.
// [IN] crTransColorIn
05.
// 颜色(inside nBitmapIn)将被用于透明色.
06.
// [IN] hBitmapOut
07.
// 位图资源的句柄,当你的鼠标在不在按钮内时,显示位图.可以为空
08.
// [IN] crTransColorOut
09.
// 颜色(inside nBitmapOut)将被用于透明色.
10.
//
11.
// 返回值:
12.
// BTNST_OK
13.
// 函数成功执行
14.
// BTNST_INVALIDRESOURCE
15.
// 加载指定资源失败
16.
// BTNST_FAILEDMASK
17.
// 创建mask bitmap失败
18.
//
19.
DWORD
SetBitmaps(
HBITMAP
hBitmapIn,
20.
COLORREF
crTransColorIn,
21.
HBITMAP
hBitmapOut = NULL,
22.
COLORREF
crTransColorOut = 0)
23.
24.
25.
SetFlat
01.
设置button为一个标准平滑的样式
// Parameters:
02.
// [IN] bFlat
03.
// 如果为TRUE按钮是平滑的样式否则为标准的样式.缺省为TRUE。
04.
// [IN] bRepaint
05.
// 如果为TRUE 将被重置
06.
//返回值:
07.
// BTNST_OK
08.
// 函数成功执行
09.
//
10.
DWORD
SetFlat(
BOOL
bFlat = TRUE,
BOOL
bRepaint = TRUE)
11.
12.
13.
SetAlign
14.
设置icon/bitmap各text 之间的绑定方式.
15.
// Parameters:
16.
// [IN] byAlign
17.
// 绑定方式.可以是下面的值:
18.
// ST_ALIGN_HORIZ Icon/bitmap 在左, text 在右
19.
// ST_ALIGN_VERT Icon/bitmap 在上, text 在下
20.
// ST_ALIGN_HORIZ_RIGHT Icon/bitmap 在右, text 在左
21.
// ST_ALIGN_OVERLAP Icon/bitmap 和 text 同一位置
22.
// 缺省为 ST_ALIGN_HORIZ.
23.
// [IN] bRepaint
24.
// 如果为TRUE 将被重置
25.
//
26.
// 返回值:
27.
// BTNST_OK
28.
// 函数成功执行
29.
// BTNST_INVALIDALIGN
30.
// 绑定失败.
31.
//
32.
DWORD
SetAlign(
BYTE
byAlign,
BOOL
bRepaint = TRUE)
33.
34.
35.
SetTextAlign
在text内设置不同的方式
01.
// Parameters:
02.
// [IN] byTextAlign
03.
// 绑定方式.可以是下面的值:
04.
// ST_TEXTALIGN_CENTER_VCENTER 水平,垂直,中心
05.
// ST_TEXTALIGN_LEFT_VCENTER 靠左,垂直,中心
06.
07.
// 缺省为ST_TEXTALIGN_CENTER_VCENTER
08.
// ST_TEXTALIGN_RIGHT_VCENTER 靠右,垂直,中心
09.
// 但在checkboxes 或 radiobuttons 中缺省为ST_TEXTALIGN_LEFT_VCENTER.
10.
// [IN] bRepaint
11.
// 如果为TRUE 将被重置
12.
//
13.
// 返回值:
14.
// BTNST_OK
15.
// 函数成功执行
16.
// BTNST_INVALIDALIGN
17.
// 绑定失败.
18.
//
19.
DWORD
SetTextAlign(
BYTE
byTextAlign,
BOOL
bRepaint = TRUE)
20.
21.
22.
SetPressedStyle
设置下压方式.
01.
// Parameters:
02.
// [IN] byStyle
03.
// 下压方式,可以是下面的值:
04.
// BTNST_PRESSED_LEFTRIGHT 从左到右 BTNST_PRESSED_TOPBOTTOM 从上到下
05.
// 缺省为 BTNST_PRESSED_LEFTRIGHT.
06.
// [IN] bRepaint
07.
// 如果为TRUE 将被重置
08.
//
09.
//返回值:
10.
// BTNST_OK
11.
// 函数成功执行
12.
// BTNST_INVALIDPRESSEDSTYLE
13.
// 下压方式不支持.
14.
//
15.
DWORD
SetPressedStyle(
BYTE
byStyle,
BOOL
bRepaint = TRUE)
16.
17.
18.
SetCheck
设置checkbox状态.
01.
button 必须是一个 checkbox.
02.
// Parameters:
03.
// [IN] nCheck
04.
// 1 表示选中.
05.
// 0 表示没有选中
06.
// [IN] bRepaint
07.
// 如果为TRUE 将被重置
08.
//
09.
// 返回值:
10.
// BTNST_OK
11.
// 函数成功执行.
12.
//
13.
DWORD
SetCheck(
int
nCheck,
BOOL
bRepaint = TRUE)
14.
15.
16.
GetCheck
返回当前checkbox状态. button 必须是一个 checkbox.
01.
//返回值:
02.
// 当前checkbox状态.
03.
// 1 被选中
04.
// 0 没有被选中或button不是一个checkbox.
05.
//
06.
int
GetCheck()
07.
08.
09.
SetDefaultColors
设置缺省颜色值
01.
// Parameters:
02.
// [IN] bRepaint
03.
// 如果为TRUE 将被重置
04.
//
05.
//返回值:
06.
// BTNST_OK
07.
// 函数成功执行
08.
//
09.
DWORD
SetDefaultColors(
BOOL
bRepaint = TRUE)
10.
11.
12.
SetColor
设置特殊状态下的颜色值
01.
// Parameters:
02.
// [IN] byColorIndex
03.
// 要设置的颜色值的索引,可以是下面的值:
04.
// BTNST_COLOR_BK_IN 鼠标滑过时背景色
05.
// BTNST_COLOR_FG_IN 鼠标滑过时文本色
06.
// BTNST_COLOR_BK_OUT 鼠标不在按钮内的背景色
07.
// BTNST_COLOR_FG_OUT 鼠标不在按钮内的背景色
08.
// BTNST_COLOR_BK_FOCUS 焦点在按钮上,背景色
09.
// BTNST_COLOR_FG_FOCUS 焦点在按钮上,文本色
10.
// [IN] crColor
11.
// 新颜色
12.
// [IN] bRepaint
13.
// 如果为TRUE 将被重置
14.
//
15.
//返回值:
16.
// BTNST_OK
17.
// 函数成功执行.
18.
// BTNST_INVALIDINDEX
19.
// 错误的植.
20.
//
21.
DWORD
SetColor(
BYTE
byColorIndex,
COLORREF
crColor,
BOOL
bRepaint = TRUE)
22.
23.
24.
GetColor
返回特殊状态下的颜色值.
01.
// Parameters:
02.
// [IN] byColorIndex
03.
// 颜色值索引
04.
// [OUT] crpColor
05.
// 指向想要查询的COLORREF.
06.
//
07.
//返回值:
08.
// BTNST_OK
09.
// 函数成功执行.
10.
// BTNST_INVALIDINDEX
11.
// 错误的植.
12.
//
13.
DWORD
GetColor(
BYTE
byColorIndex,
COLORREF
* crpColor)
14.
15.
16.
OffsetColor
该函数用于设置RGB值。
01.
// Parameters:
02.
// [IN] byColorIndex
03.
// 设置的颜色值的索引.
04.
// 看SetColor函数中颜色列表.
05.
// [IN] shOffsetColor
06.
// -255到255之间
07.
// [IN] bRepaint
08.
// 如果为TRUE 将被重置
09.
//
10.
// 返回值:
11.
// BTNST_OK
12.
// 函数成功执行.
13.
// BTNST_INVALIDINDEX
14.
// 错误的植.
15.
// BTNST_BADPARAM
16.
// 超出范围
17.
//
18.
DWORD
OffsetColor(
BYTE
byColorIndex,
short
shOffset,
BOOL
bRepaint
- CButtonST 使用方法
- VC中CButtonST使用方法
- CButtonST
- CButtonST
- CButtonST用法
- CButtonST用法
- [MFC] CButtonST
- CButtonST类
- CButtonST用法
- CButtonST使用技巧: CButtonST简介
- CButtonST使用技巧: CButtonST简介
- CButtonST使用技巧: CButtonST简介
- VS2013下CButtonST使用技巧: CButtonST简介
- CButtonST 公共接口
- CButtonST的学习
- CButtonST使用技巧
- CButtonST类使用说明文档
- 关于CButtonST类
- asp.net怎样获取HTML表单File中的路径
- UIImageView用法
- HTML5技术优势及HTML开发工具介绍
- linux下的shell 快捷键
- Open Source Project Advice
- CButtonST 使用方法
- win7下日志分析工具awstats的搭建
- LVS配置
- 8.19
- Android旋转动画不停顿
- Opencv 图片的初步处理——平滑处理
- uva 10887
- sd文件的操作和获取SD卡剩于流量和总容量
- 基址重定位