新建WClient 工程 基于对话框 OK,直接 Finish 界面制作 我们需要三个按钮 移除它们 接下来添加六个静态文本三个编辑框 两个列表控件,最后我们有: 接下来设置控件文本,控件 ID,设置成员变量,排布界面 调整: -设置文本居右 横排变竖排: Center vertically 反选中。拉长两个静态文本控件 调整两个 ListBox 同样大小 Make Same Size 空间 ID 设置: 成员变量设置:你可以使用 Ctrl+W 快捷键跳出该窗口 点 OK 点 OK 点 OK 点 OK 点 OK 点 OK 点 OK 点 OK 点 OK 点 OK 点OK 现在 客户端界面已经准备好了,接下来就是服务器了 过程略: 现在所有界面准备完毕,接下来 为两个程序添加对应的继承CSocket 类的类 在WClient 中: Ctrl+W –》Add Class-》New Class 我们添加了什么呢? 在WClient 中: Ctrl+W –》Add Class-》New Class 然后呢 接下来 为两个类添加虚函数 CWClientSocket 调出右键菜单 Add Handler ,我们将所有的都添加进去。虽然不是所有的都用的上,但有总比没有好 CWServerSocket 接下来 我们可以看看 CPP H 文件中的变化 头文件(.h) 源文件(.cpp) 接下来 添加代码: 首先,服务器端需要响应客户端连接 接受客户端发送的数据,向客户端发送数据,管理Socket 套接字。则服务器端需要对OnAccept、OnRecieve、OnClose 事件进行响应处理。 在 CServerDlg.h 中定义窗体响应Socket 类对应事件的响应函数 定义 Socket 对象,以及 CSocketFile ,CArchive 对象(有关说明查阅课本 169 页) 在 CServerDlg.h 中包含我们定义的CWServerSocket 对象的变量用于监听端口,以及与客户端(一个)进行通信 添加CWServerSocket.h 头文件 定义对象 在CServerSocket.h 中定义用于存储窗体变量的指针,和初始化函数。用于在异步调用中访问窗体 在CServerSocket.h 中定义窗体指针 初始化函数 在CServerDlg.cpp 和 CServerSocket.cpp 中分别定义函数实现 在CWserverDlg 的OnInitDialog 函数里添加如下初始语句 各函数实现 当客户端连接过来时, 接受到信息时 套接字被关闭时 双击界面按钮 ,添加按钮响应事件 在WServerDlg.h 中增加SetButtons 函数定义 添加,代码 SetButtons 函数为控制界面按钮联动。设置个控件显隐状态 在 WServerSocket.cpp 中添加 在CClientDlg.h 中 添加头文件引用 定义变量 定义函数 在CWClientDlg.cpp 文件中实现 该函数里添加初始化代码 实现各函数: 在CClientSocket.h 中 引入头文件 定义函数 定义变量 在CCLientSocket.cpp 中 引入头文件 定义代码,函数实现 两个项目编译 运行