版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
本文格式为Word版,下载可任意编辑——网络编程作业
voidCTcpclientDlg::onrev(){}
voidCTcpclientDlg::oncl(){
//Beep(2000,100);
MessageBox(\失去连接或者找不到服务器\);CStringstr,str1;charss[100];
for(intj=0;jLineScroll(ce->GetLineCount()-1);;
str.Format(\,ss);
CWnd*cw=GetDlgItem(IDC_EDIT1);
cw->EnableWindow(true);cw=GetDlgItem(IDC_EDIT2);cw->EnableWindow(true);cw=GetDlgItem(IDC_connet);cw->EnableWindow(true);cw=GetDlgItem(IDC_EDIT5);cw->EnableWindow(true);
}
voidCTcpclientDlg::OnClose(){
intconfirm=MessageBox(\确定退出吗\,\请确定
\,MB_YESNO|MB_ICONQUESTION);}
voidCTcpclientDlg::OnOK(){};
voidCTcpclientDlg::Onconnet(){
//TODO:Addyourcontrolnotificationhandlercodehereif(clconect)clconect.Close();CStringipstr,portstr;intport;
GetDlgItemText(IDC_EDIT1,ipstr);GetDlgItemText(IDC_EDIT2,portstr);GetDlgItemText(IDC_EDIT5,clientname);portstr.TrimLeft();portstr.TrimRight();
CTcpclientDlg::Onsend();if(confirm==IDYES){}
CStringenterinfo=clientname+\退出了闲聊室\;intlen=enterinfo.GetLength();clconect.Send(enterinfo,len);CDialog::OnClose();
port=atoi(portstr);
if(port>0//
cslisten.Bind(port);
if(clconect.Connect(ipstr,port)){
clconect.setp(this);
CWnd*cw=GetDlgItem(IDC_EDIT1);cw->EnableWindow(false);cw=GetDlgItem(IDC_EDIT2);cw->EnableWindow(false);cw=GetDlgItem(IDC_connet);cw->EnableWindow(false);cw=GetDlgItem(IDC_EDIT5);cw->EnableWindow(false);
SetDlgItemText(IDC_EDIT3,\已设名字\+clientname+\连
接服务器成功\);
}else{
clconect.Close();
MessageBox(\连接失败,请检查IP与端口是否与服务器一致!CStringenterinfo=clientname+\进入闲聊室\;intlen=enterinfo.GetLength();clconect.Send(enterinfo,len);
或者服务器没开启\,\连接错误\,MB_ICONERROR);
}else{}
MessageBox(\端口或IP输入有误,请重新输入\);}
}
voidCTcpclientDlg::Onsend(){}
CStringstr;
GetDlgItemText(IDC_EDIT4,str);str=clientname+\+str;intlen=str.GetLength();
if(clconect.Send(str,len)>1)SetDlgItemText(IDC_EDIT4,\);
闲聊器客户端运行界面
(二)客户端的实现
#include\#include\#include\
#ifdef_DEBUG
#definenewDEBUG_NEW#undefTHIS_FILE
staticcharTHIS_FILE[]=__FILE__;#endif
csocketcslisten,csrev[20];intcsnum=0;charname[20][100];CStringsevername;
//CAboutDlgdialogusedforAppAbout
classCAboutDlg:publicCDialog{public:CAboutDlg();//DialogData
//{{AFX_DATA(CAboutDlg)enum{IDD=IDD_ABOUTBOX};//}}AFX_DATA
//ClassWizardgeneratedvirtualfunctionoverrides
//{{AFX_VIRTUAL(CAboutDlg)
protected:
virtualvoidDoDataExchange(CDataExchange*pDX);support//}}AFX_VIRTUAL
//Implementation
protected://{{AFX_MSG(CAboutDlg)//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
//DDX/DDV
CAboutDlg::CAboutDlg():CDialog(CAboutDlg::IDD){}
voidCAboutDlg::DoDataExchange(CDataExchange*pDX){}
BEGIN_MESSAGE_MAP(CAboutDlg,CDialog)//{{AFX_MSG_MAP(CAboutDlg)//Nomessagehandlers//}}AFX_MSG_MAPEND_MESSAGE_MAP()//CTcpseverDlgdialog
CTcpseverDlg::CTcpseverDlg(CWnd*pParent/*=NULL*/):CDialog(CTcpseverDlg::IDD,pParent){}
voidCTcpseverDlg::DoDataExchange(CDataExchange*pDX){
CDialog::DoDataExchange(pDX);//{{AFX_DATA_INIT(CTcpseverDlg)//}}AFX_DATA_INIT
//NotethatLoadIcondoesnotrequireasubsequentDestroyIconinWin32m_hIcon=AfxGetApp()->LoadIcon(IDR_MAINFRAME);CDialog::DoDataExchange(pDX);//{{AFX_DATA_MAP(CAboutDlg)//}}AFX_DATA_MAP
//{{AFX_DATA_INIT(CAboutDlg)//}}AFX_DATA_INIT
}
//{{AFX_DATA_MAP(CTcpseverDlg)//}}AFX_DATA_MAP
BEGIN_MESSAGE_MAP(CTcpseverDlg,CDialog)//{{AFX_MSG_MAP(CTcpseverDlg)ON_WM_SYSCOMMAND()ON_WM_PAINT()
ON_WM_QUERYDRAGICON()ON_WM_CLOSE()
ON_BN_CLICKED(IDC_listen,Onlisten)ON_BN_CLICKED(IDC_send,Onsend)//}}AFX_MSG_MAP
END_MESSAGE_MAP()
//CTcpseverDlgmessagehandlersBOOLCTcpseverDlg::OnInitDialog(){
CDialog::OnInitDialog();
//Add\
//IDM_ABOUTBOXmustbeinthesystemcommandrange.ASSERT((IDM_ABOUTBOXASSERT(IDM_ABOUTBOXAppendMenu(MF_SEPARATOR);
pSysMenu->AppendMenu(MF_STRING,IDM_ABOUTBOX,
strAboutMenu);}
voidCTcpseverDlg::OnSysCommand(UINTnID,LPARAMlParam){}
//Ifyouaddaminimizebuttontoyourdialog,youwillneedthecodebelow//todrawtheicon.ForMFCapplicationsusingthedocument/viewmodel,//thisisautomaticallydoneforyoubytheframework.
if((nIDCAboutDlgdlgAbout;dlgAbout.DoModal();
}
//Settheiconforthisdialog.Theframeworkdoesthisautomatically//whentheapplication'smainwindowisnotadialogSetIcon(m_hIcon,TRUE);
//Setbigicon
}
SetIcon(m_hIcon,FALSE);
//Setsmallicon
//TODO:AddextrainitializationhereSetDlgItemText(IDC_EDIT3,\服务器\);SetDlgItemText(IDC_EDIT4,\);
SetDlgItemText(IDC_EDIT2,\欢迎来到闲聊室!!\);
returnTRUE;//returnTRUEunlessyousetthefocustoacontrol
voidCTcpseverDlg::OnPaint(){
if(IsIconic()){
CPaintDCdc(this);//devicecontextforpainting
SendMessage(WM_ICONERASEBKGND,(WPARAM)
dc.GetSafeHdc(),0);}
//Thesystemcallsthistoobtainthecursortodisplaywhiletheuserdrags//theminimizedwindow.
HCURSORCTcpseverDlg::OnQueryDragIcon(){}
return(HCURSOR)m_hIcon;}else{}
CDialog::OnPaint();
//Centericoninclientrectangle
intcxIcon=GetSystemMetrics(SM_CXICON);intcyIcon=GetSystemMetrics(SM_CYICON);CRectrect;
GetClientRect(
intx=(rect.Width()-cxIcon+1)/2;inty=(rect.Height()-cyIcon+1)/2;
//Drawtheicon
dc.DrawIcon(x,y,m_hIcon);
voidCTcpseverDlg::onrev(intmynum){}
voidCTcpseverDlg::onac(){}
voidCTcpseverDlg::oncl(){
//Beep(2000,100);CStringstr1,str;
GetDlgItemText(IDC_EDIT1,str1);CStringstr2=\新用户进入\;str=str1+str2;
SetDlgItemText(IDC_EDIT1,str);
cslisten.Accept(csrev[++csnum]);csrev[csnum].setp(this,csnum);CStringstr,str1;inti;charss[100];
for(intj=0;jLineScroll(ce->GetLineCount()-1);;
}
//Beep(2000,100);
for(inti=1;i0
cslisten.Listen();cslisten.setp(this,csnum);cslisten.Listen();
CWnd*cw=GetDlgItem(IDC_EDIT3);cw->EnableWindow(false);cw=GetDlgItem(IDC_EDIT4);cw->EnableWindow(false);cw=GetDlgItem(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《空间点、直线、平面之间的位置关系》学考达标练
- 2026年环境监测工程师专业知识测试题
- 2026年文学名著阅读理解与赏析试题库
- 2026年高考英语备考阅读理解强化练习题
- 2026年农业技术推广与应用试题集
- 2026年城市规划与城市设计模拟测试题
- 2026年外语语言翻译技能测试题库
- 2026年经济师宏观经济管理实务模拟题
- 2026年高风险行业安全知识教育测试题库
- 2026年物流管理人才招聘面试题物流规划供应链管理测试题目
- 2026届湖南省长郡中学生物高三上期末学业质量监测模拟试题含解析
- 餐厅特色档口运营方案
- 2025年天翼云解决方案架构师认证考试模拟题库(200题)答案及解析
- 2025年甘肃省综合评标专家库考试题库及答案
- 老年友善医院创建-社区卫生服务中心员工手册
- 高一地理(人教版)学案必修一第6章第二节地质灾害
- 2025年大宗商品数字化交易平台可行性研究报告
- 有效排痰护理
- 医院培训课件:《老年综合征及老年综合评估》
- 养老服务专项资金支付审核流程
- 《网络安全标准实践指南-网络数据安全风险评估实施指引》
评论
0/150
提交评论