VC++6.0_一个简单的图片按钮示例

VC++6.0_一个简单的图片按钮示例

ID:38254918

大小:317.63 KB

页数:6页

时间:2019-06-07

VC++6.0_一个简单的图片按钮示例_第1页
VC++6.0_一个简单的图片按钮示例_第2页
VC++6.0_一个简单的图片按钮示例_第3页
VC++6.0_一个简单的图片按钮示例_第4页
VC++6.0_一个简单的图片按钮示例_第5页
资源描述:

《VC++6.0_一个简单的图片按钮示例》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、VC++6.0一个简单的图片按钮示例VC++2008-11-2617:07:37阅读621评论0字号:大中小 用以下例子,说明如何在VC++6的对话框中添加一个图片按钮。先给出运行的效果截图,图A为对话框最初加载,图B为鼠标单击时的效果。图一,初加载对话框图二,鼠标左键单击的效果 工程名为“TT” 此工程为基于对话框的,所以新建工程时,选择MFCAppWizard(exe)->基于对话框。 工程中有一个默认对话框,其ID为“IDD_TT_DIALOG”,其上有默认的“确定”“取消”按钮,在上面加一个按钮,ID就用默认的“ID

2、C_BUTTON1”。  单击“样式”选项卡,修改其属性:“所有者绘制”与“位图”前的复选框必须打勾。 接下来制作两个图标,分别对应按钮的两种状态,一是初始状态,二是单击状态。从网上搜索两个图片,一般为jpg格式,先另保存为bmp,然后用PS进行处理,  将图片的模式改为索引模式,颜色为256,因为超过256将不能用VC++的图片编辑器加载。  将两个图片引入工程中,ID都采用默认的吧。  在对话框类中添加成员变量,类型为CBitmapButton,变量名为m_BitmapBtn,全局变量或局部变量均可。!!不要这一行,删除

3、!!!这个在对话框类的DoDataExchange函数中添加代码,DDX_Control(pDX,IDC_BUTTON1,m_BitmapBtn);在对话框类的初始化函数中添加代码,m_BitmapBtn.LoadBitmaps(IDB_BITMAP1,IDB_BITMAP2);编译后运行,即成功。以下给出代码片段供参考。   voidCTTDlg::DoDataExchange(CDataExchange*pDX){ CDialog::DoDataExchange(pDX); DDX_Control(pDX,IDC_BUT

4、TON1,m_BitmapBtn);//这句是我加的 //{{AFX_DATA_MAP(CTTDlg)  //NOTE:theClassWizardwilladdDDXandDDVcallshere //}}AFX_DATA_MAP} BOOLCTTDlg::OnInitDialog(){ CDialog::OnInitDialog(); //Settheiconforthisdialog. Theframeworkdoesthisautomatically // whentheapplication'smainwindow

5、isnotadialog SetIcon(m_hIcon,TRUE);   //Setbigicon SetIcon(m_hIcon,FALSE);  //Setsmallicon  //TODO:Addextrainitializationhere m_BitmapBtn.LoadBitmaps(IDB_BITMAP1,IDB_BITMAP2);//这句是我加的 returnTRUE; //returnTRUE unlessyousetthefocustoacontrol} 注:在onInitDialog()的return

6、之前加上m_BitmapBtn.SubclassDlgItem(IDC_BUTTON1,this);//关联到按钮m_BitmapBtn.SizeToContent();//函数使按钮适合图片大小才能实现讲的效果另外添加变量时在程序中定义一个CBitmapButton成员变量。注意:不能使用ClassWizard为按钮映射一个CButton变量,然后改为CBitmapButton,这么做并不能将按钮直接映射为CBitmapButton类的对象,反而会出现初始化错误CBitmapButtonm_btnX1;定义变量,必须放在函

7、数外面才能正常实现手动加入的话,应该在DoDataExchange里将手动的它与控件资源相联系起来,加入DDX_Control(pDX, IDC_BUTTON3, m_btnX);如下所示:void CTestdlg1Dlg::DoDataExchange(CDataExchange* pDX){CDialog::DoDataExchange(pDX);//{{AFX_DATA_MAP(CTestdlg1Dlg)//}}AFX_DATA_MAP         DDX_Control(pDX, IDC_BUTTON3, m_

8、btnX);}

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。