资源简介
基于CSocket编程的C++多人聊天室,使用MFC,C/S,服务端可以看到在线人数
代码片段和文件信息
// Chat.cpp : 实现文件
//
#include “stdafx.h“
#include “客户端.h“
#include “Chat.h“
#include “afxdialogex.h“
// CChat 对话框
IMPLEMENT_DYNAMIC(CChat CDialogEx)
CChat::CChat(CWnd* pParent /*=NULL*/)
: CDialogEx(CChat::IDD pParent)
m_receiveMsg(_T(““))
m_sendMsg(_T(““))
{
}
CChat::~CChat()
{
}
void CChat::DoDataExchange(CDataExchange* pDX)
{
CDialogEx::DoDataExchange(pDX);
DDX_Text(pDX IDC_RECEIVEMSG m_receiveMsg);
DDX_Text(pDX IDC_SENDMSG m_sendMsg);
DDX_Control(pDX IDC_RECEIVEMSG m_receiveCtrl);
}
BEGIN_MESSAGE_MAP(CChat CDialogEx)
ON_BN_CLICKED(IDC_SEND &CChat::OnBnClickedSend)
ON_BN_CLICKED(IDC_CANCEL &CChat::OnBnClickedCancel)
ON_WM_CLOSE()
END_MESSAGE_MAP()
// CChat 消息处理程序
void CChat::OnBnClickedSend()
{
// TODO: 在此添加控件通知处理程序代码
CTime time;
time = CTime::GetCurrentTime(); //获取现在时间
CString strTime = time.Format(“%Y-%m-%d %H:%M:%S “);
theApp.head.type = 3;
UpdateData(true);
m_receiveMsg += strTime + (CString)“(“ + theApp.m_userID + (CString)“) “ + theApp.m_userNAME + (CString)“\r\n “ + m_sendMsg + (CString)“\r\n“;
CHead Msg;
Msg.type = 3;
strcpy_s(Msg.fromID(CStringA)theApp.m_userID);
strcpy_s(Msg.usermsg.NAME(CStringA)theApp.m_userNAME);
strcpy_s(Msg.usermsg.ID(CStringA)theApp.m_userID);
strcpy_s(Msg.toID(CStringA)m_toID);
strcpy_s(Msg.iptheApp.head.ip);
strcpy_s(Msg.msg(CStringA)m_sendMsg);
m_sendMsg = ““;
UpdateData(false);
m_receiveCtrl.LineScroll(m_receiveCtrl.GetLineCount()-1);
theApp.m_tcp->Send(&Msgsizeof(Msg));
}
void CChat::OnBnClickedCancel()
{
// TODO: 在此添加控件通知处理程序代码
OnClose();
CDialogEx::OnCancel();
}
BOOL CChat::OnInitDialog()
{
CDialogEx::OnInitDialog();
// TODO: 在此添加额外的初始化
m_caption =(CString)“正与(“ + m_toID + (CString)“) “ + m_name + (CString)“ 聊天中“;
SetWindowTextW(m_caption);//设置对话框标题
return TRUE; // return TRUE unless you set the focus to a control
// 异常: OCX 属性页应返回 FALSE
}
void CChat::OnClose()
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
theApp.m_userMsg.erase(m_toID);
CDialogEx::OnClose();
}
相关资源
- directx11的官方C++例程
- C++、MFC连接MYSQL实现增删改查
- Programming Principles and Practice Using C++(
- c++语言应用------基于visual studio的聊天
- Visual C++开发实战1200例(第2卷).(配
- Visual C++开发实战1200例(第2卷).(配
- vc_mbcsmfc
- C++面向对象程序设计教程_第3版第三版
- 图像识别与项目实践:VC++、MATLAB技术
- MFC 使用Opencv调用摄像头并显示画面,
- Essential C++中文版
- haar分类器人脸检测MFC实现
- 基于SQL vs2013的学生成绩管理系统
- 串口数据波形显示
- C++ Primer第五版中文版习题集(全)
- 计算机图形学基础教程(Visual C++版)
- C++ Primer第五版中文版习题集(完整版
- C++ Primer Plus第6版中文版 mobi
- OpenGL+MFC三维绘图
- C++游戏与图形编程基础 第2版
- MFC界面 8数码A星算法
- 学生成绩管理系统用c++ 链表 结构体
- VC++2010 VC上位机 20个教程 零基础 极速
- MFC自绘窗口的边框和标题
- MFC 计算器
- stm32f107vc_UCOSIII_3.03_CPP
- MFC完美版中文帮助文档
- 分布式停车场 c++
- C++17标准英文
- C++Primer.Plus第6版中文版.pdf
评论
共有 条评论