mfc中动态创建按钮
在Resource.h中,添加按钮ID:ID_BTN_TEMP = 1001
第二步:
在View类【CView的子类】中添加一个变量,判断按钮是否已经创建:
bool m_bIsCreatButton;
第三步:
创建一个按钮数组:
CBitmapButton *m_bitList[11]
第四步:
在View类【CView的子类】的构造函数中,初始化bIsCreatButton:
m_bIsCreatButton = false;
第五步:
在View类【CView的子类】中添加函数创建按钮:
CBitmapButton* CHisNavView::CreateButton(int nID, char* text,int left, int top, int right, int bottom)
{
CRect rect;
GetClientRect(rect);
CBitmapButton *pButton = new CBitmapButton();
ASSERT_VALID(pButton); pButton->Create(TEXT(text),
WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON,
CRect(left, top, right, bottom),
this, nID);
return pButton;
}
其中,nID为按钮ID,text为按钮文本。 其他为按钮显示范围。
第六步:
在View类【CView的子类】的OnDraw方法中创建按钮:
m_bitList[0] = CreateButton(ID_BTN_TEMP, "天志的按钮", 50, 50, 150, 80);
第六步:
在View类【CView的子类】中声明函数:
afx_msg void OnTest()
第七步:
在View类【CView的子类】的BEGIN_MESSAGE_MAP(CHisNavView, CView)添加:
ON_BN_CLICKED(ID_BTN_TEMP, CHisNavView::OnTest)
第八步:实现OnTest()函数
void CHisNavView::OnTest()
{
MessageBox(TEXT("天志自己写着玩!"), NULL, MB_OK);
}
发布日期:2021-07-01 04:31:17
浏览次数:2
分类:技术文章
本文共 984 字,大约阅读时间需要 3 分钟。
第一步:在Resource.h中,添加按钮ID:ID_BTN_TEMP = 1001
第二步:
在View类【CView的子类】中添加一个变量,判断按钮是否已经创建:
bool m_bIsCreatButton;
第三步:
创建一个按钮数组:
CBitmapButton *m_bitList[11]
第四步:
在View类【CView的子类】的构造函数中,初始化bIsCreatButton:
m_bIsCreatButton = false;
第五步:
在View类【CView的子类】中添加函数创建按钮:
CBitmapButton* CHisNavView::CreateButton(int nID, char* text,int left, int top, int right, int bottom)
{
CRect rect;
GetClientRect(rect);
CBitmapButton *pButton = new CBitmapButton();
ASSERT_VALID(pButton); pButton->Create(TEXT(text),
WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON,
CRect(left, top, right, bottom),
this, nID);
return pButton;
}
其中,nID为按钮ID,text为按钮文本。 其他为按钮显示范围。
第六步:
在View类【CView的子类】的OnDraw方法中创建按钮:
m_bitList[0] = CreateButton(ID_BTN_TEMP, "天志的按钮", 50, 50, 150, 80);
第六步:
在View类【CView的子类】中声明函数:
afx_msg void OnTest()
第七步:
在View类【CView的子类】的BEGIN_MESSAGE_MAP(CHisNavView, CView)添加:
ON_BN_CLICKED(ID_BTN_TEMP, CHisNavView::OnTest)
第八步:实现OnTest()函数
void CHisNavView::OnTest()
{
MessageBox(TEXT("天志自己写着玩!"), NULL, MB_OK);
}
转载地址:https://my-github.blog.csdn.net/article/details/51619003 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
初次前来,多多关照!
[***.217.46.12]2024年04月09日 13时05分25秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
蓝桥杯题解(三)
2019-05-03
逆向工程核心原理笔记(三)——IA-32寄存器
2019-05-03
SQL优化--大数据量模糊查询缓慢
2019-05-03
Scala学习第十二天 Scala中的继承:超类的构造、重写字段、重写方法代码实战
2019-05-03
剑指offer:栈的压入、弹出序列(java)
2019-05-03
剑指offer:字符串的组合(java)
2019-05-03
剑指offer:数组中出现次数超过一半的数字(java)
2019-05-03
实时开发框架Meteor API解读系列<二>Core
2019-05-03
实时开发框架Meteor API解读系列<六> DDP
2019-05-03
实时开发框架Meteor 实际应用系列<一>---文件的上传和下载[补充]
2019-05-03
实时开发框架Meteor API解读系列<七> Collection --01
2019-05-03
启用fcitx-qimpanel面板程序
2019-05-03
浅谈Q的基本实现
2019-05-03
阿里云短信服务(JAVA)
2019-05-03
GCD使用 串行并行队列 与 同步异步执行的各种组合 及要点分析
2019-05-03
深入研究 Runloop 与线程保活
2019-05-03
iOS 版本更新(强制更新)检测问题
2019-05-03
项目在iOS11上遇到的小问题
2019-05-03
Python 简单入门指北(一)
2019-05-03