- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第10章 Visual C++编程实例;10.1 MFC编程流程 ;图 10-1;一个MFC程序运行的一般过程如下:
(1) 生成CwinApp的一个实例(调用CwinApp的构造函数),初始化全局对象;
(2) Win32入口程序函数WinMain调用函数AfxWinMain;
(3) AfxWinMain调用函数CwinApp的成员函数InitInstance;
(4) AfxWinMain调用函数CwinApp的成员函数Run;
(5) AfxWinMain函数返回到WinMain,WimMain结束,程序结束。
; 例10-1 吹泡泡程序。每当用户在窗口客户区中按下鼠标左键时即可产生一个泡泡(彩色圆形)。
设计思路:显示一个泡泡所需的数据包括其位置和大小,在MFC中可用其包含矩形表示。可设置一数组,每当用户按下鼠标左键时,就产生一个泡泡的数据并存入数组中。最后,由框架窗口类的OnPaint()函数显示所有的泡泡。
;#includeafxwin.h
#define MAX_BUBBLE 250
class CMyWnd:public CFrameWnd
{
CRect m_rectBubble[MAX_BUBBLE];
int m_nBubbleCount;
public:
CMyWnd() {m_nBubbleCount=0;}
; protected:
afx_msg void OnLButtonDown(UINT nFlags,CPoint point);
afx_msg void OnPaint();
DECLARE_MESSAGE_MAP()
};
?//消息映射
BEGIN_MESSAGE_MAP(CMyWnd,CFrameWnd)
ON_WM_LBUTTONDOWN()
ON_WM_PAINT()
END_MESSAGE_MAP();//框架窗口类的成员函数
void CMyWnd::OnLButtonDown(UINT nFlags,CPoint point)
{
if(m_nBubbleCountMAX_BUBBLE)
{
int r=rand()%50+10;
CRect rect(point.x-r,point.y-r,point.x+r,point.y+r);
m_rectBubble[m_nBubbleCount]=rect;
m_nBubbleCount++;
InvalidateRect(rect,FALSE);
};}
void CMyWnd::OnPaint()
{
CPaintDC dc(this);
CBrush brushNew;
CPen penNew;
brushNew.CreateSolidBrush(RGB(rand()%255,rand()%255,rand()%255));
penNew.CreatePen(PS_SOLID,1,RGB(255,0,0));
dc.SelectObject(brushNew);
dc.SelectObject(penNew);;for(int i=0;im_nBubbleCount;i++)
dc.Ellipse(m_rectBubble[i]);
}
?//应用程序类
class CMyApp:public CWinApp
{
public:
BOOL InitInstance();
};
BOOL CMyApp::InitInstance();{
CMyWnd *pFrame=new CMyWnd;
pFrame-Create(0,_T(吹彩色泡泡));
pFrame-ShowWindow(m_nCmdShow);
this-m_pMainWnd=pFrame;
return TRUE;
}
CMyApp ThisApp; //全局应用程序对象
按【Ctrl+F5】运行程序,运行结果如图10-2所示。
; 说明:
该程序声明了两个类,一个是由应用程序类CwinApp派生出来的CmyApp类,一个是由框架窗口CframeWnd类派生出来的CmyWnd类。MFC的基本类名均以字母C打头,习惯上在为使用MFC编写的应用程序中的类起名
您可能关注的文档
- 《夜归鹿门歌》ppt课件83235.ppt
- 《夜雨寄北》备课-(1).ppt
- 0-3岁婴幼儿教育早教训练课程ppt课件课件下载.ppt
- 0-3岁婴幼儿科学营养喂养ppt课件课件下载.ppt
- 0-3岁家长和婴幼儿心理需求和分析指导ppt课件课件下载.ppt
- 0-3岁婴幼儿常见性疾病的预防ppt课件课件下载.ppt
- 0-6岁儿童中医药健康管理ppt课件课件下载.ppt
- 0--6岁婴幼儿大脑发育特点ppt课件课件下载.ppt
- 0-36月儿童中医日常保健知识ppt课件课件下载.ppt
- -B-Let's-learnppt课件课件下载.ppt
- 2025年新人教版二年级数学上册全册同步课件.ppt
- 2025年秋新冀教版数学3年级上册全册同步教学课件 (2).ppt
- 2025年秋新人教PEP版小学英语3年级上册全册同步课件.ppt
- 2025年秋季新冀教版小学数学2年级上册整册同步教学课件.ppt
- 2025年秋季新苏教版数学2年级上册全册同步课件.ppt
- 2025年秋新西师大版数学2年级上册全册同步教学课件.ppt
- 2025年秋季新冀教版小学数学1年级上册整册同步教学课件.ppt
- 2025年秋新人教PEP版小学英语3年级下册全册同步教学课件.ppt
- 2025年秋新苏教版小学数学1年级下册全册同步课件.ppt
- 2025年新人教PEP版英语三年级上册全册同步课件.ppt
原创力文档


文档评论(0)