📄 simplemessagerdlg.h
字号:
// SimpleMessagerDlg.h : 头文件
//
#pragma once
#include "afxwin.h"
#include <WinSock2.h>
#include <vector>
// CSimpleMessagerDlg 对话框
class CSimpleMessagerDlg : public CDialog
{
// 构造
public:
CSimpleMessagerDlg(CWnd* pParent = NULL); // 标准构造函数
// 对话框数据
enum { IDD = IDD_SIMPLEMESSAGER_DIALOG };
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持
virtual BOOL PreTranslateMessage(MSG* pMsg);
// 实现
protected:
HICON m_hIcon;
void AddNewMessage(const CString& sender, const CString& text);
bool ParseCommand(const CString& text);
void BroadCastMessageToNet(const CString& text);
void SendMessageToNet(const CString& ip, const CString& text);
void BroadCastOnLine();
void BroadCastOffLine();
void BroadCastNewNickName();
void RefreshUserTable();
bool GetNickName();
void SaveNickName();
// 生成的消息映射函数
virtual BOOL OnInitDialog();
afx_msg void OnPaint();
afx_msg HCURSOR OnQueryDragIcon();
afx_msg void OnTimer(UINT_PTR nIDEvent);
DECLARE_MESSAGE_MAP()
public:
afx_msg void OnBnClickedOk();
protected:
// 发送按钮
CButton m_SendButton;
// 发送文本
CEdit m_SendMsgText;
// IP输入
CEdit m_IPEdit;
// 接收消息窗口
CEdit m_ReciveMsgEdit;
// SOCKET
SOCKET m_socket;
WSADATA m_wsaData;
SOCKADDR_IN m_toAddr; //发送地址结构体
SOCKADDR_IN m_recvAddr; //接收地址结构体
SOCKADDR_IN m_fromAddr; //接收地址结构体
char m_recvBuffer[256]; //接收缓冲区
CString m_hostip; //本机IP
CString m_NickNameText; //人物昵称
struct UserStruct
{
CString hostip;
CString nickname;
int timecount;
UserStruct() { timecount = 0; }
};
std::vector<UserStruct> m_UserTable; //用户表
public:
afx_msg void OnBnClickedButton2();
afx_msg void OnBnClickedButton1();
afx_msg void OnBnClickedButton3();
protected:
// 用户昵称
CEdit m_NickName;
// 用户列表
CListBox m_UserList;
public:
afx_msg void OnBnClickedButton4();
afx_msg void OnLbnSelchangeList1();
afx_msg void OnBnClickedButton5();
afx_msg void OnBnClickedButton6();
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -