⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 d046.bmp.txt

📁 Visual C++通信编程实例
💻 TXT
字号:
表2-8串口设置对话框中控件和变量对应关系
┏━━━━━━━━┳━━━━━━┳━━━━━━━━┓
┃    ControIIDs  ┃    耐pe    ┃    Member      ┃
┣━━━━━━━━╋━━━━━━╋━━━━━━━━┫
┃                ┃ CString    ┃ m_strBaud      ┃
┃ IDC_BAUD       ┃            ┃                ┃
┃                ┣━━━━━━╋━━━━━━━━┫
┃                ┃ CComboBox  ┃m_ctrlBaud      ┃
┣━━━━━━━━╋━━━━━━╋━━━━━━━━┫
┃                ┃ CString    ┃ m_strDatabits  ┃
┃IDC_DATABITS    ┃            ┃                ┃
┃                ┣━━━━━━╋━━━━━━━━┫
┃                ┃CComboBox   ┃m ctrIDatabits  ┃
┣━━━━━━━━╋━━━━━━╋━━━━━━━━┫
┃ IDC_ECHO       ┃ BOOL       ┃ m_bEcho        ┃
┣━━━━━━━━╋━━━━━━╋━━━━━━━━┫
┃                ┃ CButton    ┃ m_ctrIFlowCtrl ┃
┃ IDC FLOWCTRL   ┃            ┃                ┃
┃                ┣━━━━━━╋━━━━━━━━┫
┃                ┃int         ┃ m nFlowCtrl    ┃
┣━━━━━━━━╋━━━━━━╋━━━━━━━━┫
┃IDC_NEWLINE     ┃ BOOL       ┃ m bNewline     ┃
┣━━━━━━━━╋━━━━━━╋━━━━━━━━┫
┃ IDC_PARITY     ┃ CComboBox  ┃m_ctrIParity    ┃
┣━━━━━━━━╋━━━━━━╋━━━━━━━━┫
┃                ┃ CString    ┃ m_strPort      ┃
┃Ⅱ)C_PORT       ┃            ┃                ┃
┃                ┣━━━━━━╋━━━━━━━━┫
┃                ┃ CComboBox  ┃ m_ctrIPmt      ┃
┣━━━━━━━━╋━━━━━━╋━━━━━━━━┫
┃Ⅱ)C_STOPBITS   ┃CComboBox   ┃ m_ctrIStopbits ┃
┗━━━━━━━━┻━━━━━━┻━━━━━━━━┛
    再在ClassWizard中为CSetupDlg类添加为OnInitDialog成员函数(见图2-16),并加入
以下代码:
图2-16  在CSetupDlg类中添加OnInitDialog成员函数
  CSetupDlg的主要任务是配置通信参数。在OnInitDialog函数中,程序要根据当前是否
已连接到串口来决定允许/禁止Port组合框。囡为在打开一个连接后,显然不能随便改变端
口。具体源代码见随书光盘“Chapter 2\Example 2\”。
    3.编写CTermDoc类的相关代码
    CTermDoc类是本程序的重点,读者要认真体会。该类负责Term的通信任务,主要包
括设置通信参数、打开和关闭串口、建立和终止辅助工作线程、用辅助线程监视串口等。
    首先,在TermDoc.h中添加下列变量:
CWinThread* m_pThread;
volatile BOOL m_bConnected;
volatile HWND m_hTermWnd;
volatile HANDLE m_hPostMsgEvent;
OVERLAPPED m_osRead, m_osWrite;
,,代表辅助线程
,,串口是否连接
,,保存视图的窗口句柄
,,用于WM_COMMNOTIFY消息的事件对象
,,用于重叠读,写

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -