单文档ceditview 如何更新文字

yyang0514 yyang0514 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
我在串口响应函数中受到了数据,但是不知道如何在view界面中更新显示。我在OnDraw(CDC* pDC)和OnEnUpdate()函数中尝试显示都没有成功。请问如何更新显示到view页面。
我的代码如下:

void CserialtoolView::OnComm()
{
// TODO: 在此处添加消息处理程序代码
int inCount;
CString str;
VARIANT input;
BYTE rxdata[1024];
long len,k,i=0;
COleSafeArray safearray;
CByteArray Array;

switch(myComm.get_CommEvent())
{
case 2:
{
inCount=myComm.get_InBufferCount();
input=myComm.get_Input();

safearray=input;
len=safearray.GetOneDimSize();
for (k=0;k<len;k++)
{
safearray.GetElement(&k,rxdata+k);
if(rxdata[k]=='\n')
{
myStr+="\r\n";
}
else
{
str.Format(_T("%c"),rxdata[k]);
myStr+=str;
}

}
//MessageBox(myStr);
//UpdateData(FALSE);
Invalidate();
break;
}
default:
break;
}
}


void CserialtoolView::OnEnUpdate()
{
// TODO: 如果该控件是 RICHEDIT 控件,它将不
// 发送此通知,除非重写 CEditView::OnInitDialog()
// 函数,以将 EM_SETEVENTMASK 消息发送到该控件,
// 同时将 ENM_UPDATE 标志“或”运算到 lParam 掩码中。

// TODO: 在此添加控件通知处理程序代码
SetWindowText(myStr);
}


void CserialtoolView::OnDraw(CDC* pDC)
{
// TODO: 在此添加专用代码和/或调用基类
//SetWindowText(myStr);
//pDC->TextOut(200,200,myStr);
SetWindowText(myStr);
}

...全文

相关推荐

评论 4
收藏 已收藏
分享
返回顶部
yyang0514
VC/MFC 16,550 成员 421,606 内容