串口通信中怎么把发送内容也显示到编辑框
各位大神帮帮忙哈,代码的目的是:每次发送到对方的的内容显示到接收框,接收的内容也同样显示到接收框(显示顺序按时间)现在出现的问题是:每次接受的数据会把前一次显示在接收框的内容(这个内容指显示的发送的内容)清除,请问这个该怎么解决呢
这是我收发数据的代码:
//接收数据
LONG CSerialPortTestDlg::OnComm(WPARAM ch, LPARAM port)
{
m_strEditReceiveMsg += (char)ch;
UpdateData(FALSE);
return 0;
}
//发送数据
void CSerialPortTestDlg::OnBnClickedButtonSend()
{
// TODO: 在此添加控件通知处理程序代码
CString str1;
if (!m_bSerialPortOpened)
{
return;
}
UpdateData(true);
m_SerialPort.WriteToPort((char *)(LPCTSTR)m_strEditSendMsg);
GetDlgItemText(IDC_EDIT_SEND,str1);
UpdateData(false);
str1 += _T("\r\n");
int lastLine = m_EditRecv.LineIndex(m_EditRecv.GetLineCount()-1);
m_EditRecv.SetSel(lastLine+1 , lastLine+2 , 0);
m_EditRecv.ReplaceSel(str1); // 在最后一行添加新的内容
}