2创建应用程序的过程Word格式.docx

上传人:b****1 文档编号:13360184 上传时间:2022-10-10 格式:DOCX 页数:38 大小:35.78KB
下载 相关 举报
2创建应用程序的过程Word格式.docx_第1页
第1页 / 共38页
2创建应用程序的过程Word格式.docx_第2页
第2页 / 共38页
2创建应用程序的过程Word格式.docx_第3页
第3页 / 共38页
2创建应用程序的过程Word格式.docx_第4页
第4页 / 共38页
2创建应用程序的过程Word格式.docx_第5页
第5页 / 共38页
点击查看更多>>
下载资源
资源描述

2创建应用程序的过程Word格式.docx

《2创建应用程序的过程Word格式.docx》由会员分享,可在线阅读,更多相关《2创建应用程序的过程Word格式.docx(38页珍藏版)》请在冰豆网上搜索。

2创建应用程序的过程Word格式.docx

密码

编辑框editbox

IDC_SERVER

IDC_USER

IDC_PASS

CHECKBOX

IDC_DEL

是否删除邮件

RichEdit

IDC_INFO

命令按钮button

IDC_CONN

连接

IDC_VIEW

查看邮件

IDC_DISC

断开

IDCANCAL

退出

CChooseDlg

CComboBox

IDC_MSGLIST

CViewDlg

IDC_MSGTEXT

IDC_SAVE

存储

3.定义控件的成员变量

按照表6-14,用类向导(ClassWizard)为对话框中的控件对象定义相应的成员变量。

表6-14控件对象的成员变量

ControlIDs

变量名称

MemberVariableName

变量类别

Category

变量类型

VariableType

server

Value

CString

user

pass

del

BOOL

info

ctllnfo

Control

CRichEditCtrl

ctlList

text

4.添加成员变量的初始化代码

在FtpDlg.cpp文件的OnInitDialog()函数中添加成员变量的初始化代码。

对服务器名,登录用户名,登录口令的控件变量赋初值。

BOOLCFtpDlg:

:

OnInitDialog()

{

.................//前面是MFC应用程序向导和类向导自动生成的代码

//TODO:

Addextrainitializationhere

m_strFtp=_T("

"

);

//初始化服务器域名

m_strName=_T("

//初始化登录用户名

m_strPwd=_T("

//初始化登录口令

UpdateData(FALSE);

//更新界面

returnTRUE;

//returnTRUEunlessyousetthefocustoacontrol

}

5.为对话框中的控件对象添加事件响应函数

按照表6-15,用类向导(ClassWizard)为对话框中的控件对象添加事件响应函数。

表6-15对话框控件的事件响应函数

对象标识ObjectID

消息Message

函数Memberfunctions

命令按钮

BN_CLICKED

OnConn

OnView

OnDisc

IDOK

OnOK

OnSave

6.为CFtpDlg类添加其它的成员函数

Download(CStringstrSName,CStringstrDName);

Upload(CStringstrSName,CStringstrDName);

分别用于文件的下载和上传。

7.手工添加包含语句

在CFtpDlg类的FtpDlg.cpp文件中添加对于Afxinet.h的包含命令,来获得对于MFCWinInet类的支持。

8.添加事件函数和成员函数的代码

9.进行测试

4.创建从CAsyncSocket类继承的派生类

(1)为了能够捕获并响应socket事件,应创建用户自己的套接字类,它应当从CAsyncSocket类派生,还能将套接字事件传递给对话框,以便执行用户自己的事件处理函数。

选择菜单“插入/新建类”,进入“NewClass”对话框,如图5-12所示。

图5-12添加自己的套接字类

选择或输入以下信息:

ClassType:

选择MFCClass

ClassInfoumation下的Name:

输入mySock

ClassInfoumation下的Baseclass:

选择CAsyncSocket

点击“OK”按钮,系统会自动生成CMySocket类对应的包含文件mySock.h和mySock.cpp文件,在VC界面的ClassView中就可以看到这个类。

(2)利用类向导ClassWizard为这个套接字类添加响应消息的事件处理成员函数。

点菜单View/ClassWizard...,进入类向导对话框,选择MessageMaps(消息映射)卡,确认Classname是mySock,从Messages(消息)栏中选择事件消息,然后点击AddFunction按钮,就会看到在MemberFunction栏中添加了相应的事件处理函数。

如图5-13所示,此程序中需要添加OnConnect,OnClose和OnReceive三个函数。

这一步会在CMySocket类的mySock.h中自动生成这些函数的声明,在mySock.cpp中生成这些函数的框架,以及消息映射的相关代码。

可参看后面的程序清单。

图5-13为套接字类添加响应消息的事件处理成员函数

(3)为套接字类添加一般的成员函数和成员变量

在VC++的界面中,在工作区窗口选择ClassView卡,用右键单击CMySocket类,会弹出快捷菜单,选择其中的AddMemberFunction可以为该类添加成员函数;

选择AddMemberVariable可以为该类添加成员变量。

如图5-14所示。

图5-15和图5-16是添加操作的对话框。

图5-14为指定的类添加成员变量或成员函数

对这个套接字类,添加一个私有的成员变量,是一个对话框类的指针。

private:

CPop3Dlg*m_pDlg;

图5-15为套接字类添加一般的成员变量

再添加一个成员函数:

voidSetParent(CPop3Dlg*pDlg);

图5-16为套接字类添加一般的成员函数

这一步同样会在mySock.h中生成变量或函数的声明,在mySock.cpp中生成函数的框架代码。

如果熟悉的话,这一步的代码也可以直接手工添加。

(4)手工添加其他代码

在VC++的界面中,在工作区窗口选择FileView卡,双击要编辑的文件,在右面的窗口中就会展示该文件的代码,可以编辑添加。

对于mySock.h,应在文件开头,添加对于此应用程序对话框类的声明。

classCPop3Dlg;

对于mySock.cpp,有四处添加:

①应在文件开头,添加包含文件说明。

这是因为此套接字类用到了对话框类的变量。

#include“pop3Dlg.h”

②在构造函数中,添加对于对话框指针成员变量的初始化代码:

mySock:

mySock(){m_pDlg=NULL;

}

③在析构函数中,添加对于对话框指针成员变量的初始化代码:

~mySock(){m_pDlg=NULL;

④为成员函数setParent和事件处理函数OnConnect,OnClose和OnReceive添加代码。

详见后面的程序清单。

//pop3.h:

mainheaderfileforthePOP3application

#if!

defined(AFX_POP3_H__INCLUDED_)

#defineAFX_POP3_H__INCLUDED_

#if_MSC_VER>

1000

#pragmaonce

#endif//_MSC_VER>

#ifndef__AFXWIN_H__

#errorinclude'

stdafx.h'

beforeincludingthisfileforPCH

#endif

#include"

resource.h"

//mainsymbols

/////////////////////////////////////////////////////////////////////////////

//CPop3App:

//Seepop3.cppfortheimplementationofthisclass

classCPop3App:

publicCWinApp

public:

CPop3App();

//Overrides

//ClassWizardgeneratedvirtualfunctionoverrides

//{{AFX_VIRTUAL(CPop3App)

virtualBOOLInitInstance();

//}}AFX_VIRTUAL

//Implementation

//{{AFX_MSG(CPop3App)

//NOTE-theClassWizardwilladdandremovememberfunctionshere.

//DONOTEDITwhatyouseeintheseblocksofgeneratedcode!

//}}AFX_MSG

DECLARE_MESSAGE_MAP()

};

//{{AFX_INSERT_LOCATION}}

//MicrosoftVisualC++willinsertadditionaldeclarationsimmediatelybeforethepreviousline.

#endif//

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1