|
在你的程序中如何使用CButtonST类
原文:davide calabro
翻译:xinying_ge 逆风者
原文出处:CButtonST
v4.1
下载源代码
首先在你的工程中加入如下文件:
BtnST.h
BtnST.cpp
从v3.5版本开始,CButtonST支持使用BCMenu类创建菜单。为了能够使用BCMenu,你必须在 BtnST.h中加入下面二行:
#define BTNST_USE_BCMENU
#include "BCMenu.h"
当然,你也必须在你的工程文件中加入下面的头文件:
BCMenu.h
BCMenu.cpp
注意:当 BCMenu 使参数可用时,与用SetNenu的方法是不同的! 从v3.6版本开始, CbuttonST可以在特殊的按钮播放声音。为了能够让它播放声音要在
BtnST.h 中加入:
#define BTNST_USE_SOUND
这样是为了使用SetSound 方法。用静态方法创建一个 CButtonST 用对话框编辑器中建一个标准的button,例如IDOK(你不需在自己动手创建),你可以用一个变量来创建这个button:
CButtonST m_btnOk;
现在你可以把这个 button 和 CbuttonST 连接在一起。在你的基于对话框的程序,在OnInitDialog:
// Call the base-class method
CDialog::OnInitDialog();
// Create the IDOK button
m_btnOk.SubclassDlgItem(IDOK, this);
Or in your DoDataExchange:
// Call the base method
CDialog::DoDataExchange(pDX);
// Create the IDOK button
DDX_Control(pDX, IDOK, m_btnOk);
用动态方法创建一个CButtonST
在人的程序中,为button创建一个变量。注意,这个变量的类型是指针:
CButtonST* m_pbtnOk;
现在创建button。在你的基于对话框的程序,在OnInitDialog:
// Call the base-class method
CDialog::OnInitDialog();
// Create the IDOK button
m_pbtnOk = new CButtonST;
m_pbtnOk->Create(_T("&Ok"),
WS_CHILD | WS_VISIBLE | WS_GROUP | WS_TABSTOP,
CRect(10, 10, 200, 100), this, IDOK);
// Set the same font of the application
m_pbtnOk->SetFont(GetFont());
记住销毁这个指针,否则将会导致内存泄漏.这个也可以容易的实现,例如,在你的类中销毁它:if (m_pbtnOk) delete m_pbtnOk;
类的方法:
SetIcon(using multi-size resources)
给你的button指定图标。任何本来就有的图标或位图将会被删除。
参数:
// Parameters:
// [IN] nIconIn
// 图标资源的ID,当你的鼠标放在按钮上显示该图标.如果为空,则将删除任何图标。
// [IN] nCxDesiredIn
// 指定加载图标的宽度,像素
// [IN] nCyDesiredIn
// 指定加载图标的高度,像素
// [IN] nIconOut
// 图标资源的ID,当你的鼠标在不在按钮内时,显示图标.可以为空.
// 如果指定这个参数的值为 BTNST_AUTO_GRAY (cast to int)第二个图标将从 nIconIn 自动地创建,
// 同时改变灰度级.
// 如果指定这个参数的值为 BTNST_AUTO_DARKER (cast to int)第二个图标将从 nIconIn 自动地创建,
// 灰度级为它的25%的.
// [IN] nCxDesiredOut
// 指定加载图标的宽度,像素
// [IN] nCyDesiredOut
// 指定加载图标的高度,像素
//
// 返回值:
// BTNST_OK
// 函数成功执行
// BTNST_INVALIDRESOURCE
// 加载指定资源失败
//
DWORD SetIcon(int nIconIn, int nCxDesiredIn, int nCyDesiredIn,
int nIconOut = NULL, int nCxDesiredOut = 0, int nCyDesiredOut = 0)
SetIcon (using resources)
本文章更多内容:1 - 2 - 3 - 4 - 下一页>> |