一个ip包流量分析程序,截取的结果原本是在dos窗口显示的,现在我用MFC重做,要把结果在单文档的客户区显示出来,显示部分该怎么做?
感觉用TextOut做太难受了,对输入位置的设置等太不方便,有比较方便简洁的做法吗?原本的显示部分代码:for(pTemp = pHead; pTemp; pTemp = pTemp->pNext)
{
unsigned long dwSourTemp = pTemp->getSourIPAddr();
unsigned long dwDestTemp = pTemp->getDestIPAddr();
out << inet_ntoa(*(in_addr *)&(dwSourTemp)) << '\t';
out << inet_ntoa(*(in_addr *)&(dwDestTemp)) << '\t';
out << resetiosflags(ios::right) << setiosflags(ios::left)
<< setfill(' ') << setw(10) << pTemp->getProtocol_String()
<< resetiosflags(ios::left) << setiosflags(ios::right);
out << pTemp->getCount() << endl;
}
显示结果如下:

解决方案 »

  1.   

    如果不是必须要求
    并且功能不是太多
    直接用对话框或者在单文档里面嵌入一个编辑器要不直接TextOut()
      

  2.   

    1.在建立单文档工程的最后一步把基类选成CEditView 
           
    再添加下面的代码就可以把str里的内容显示到单文档界面上了        CEdit & EditCtrl=GetEditCtrl();   
    CString str;
    EditCtrl.GetWindowText(str);
    str+="is OK !!!!\r\n";
    EditCtrl.SetWindowText(str);
      

  3.   

    补:
    上面的代码必须在CxxxView类里添加
      

  4.   

    要写多文字的话,一般视图的基类最好选择:CEditView ;
    要是想画图的话,默认的就好了;
    想像对话框那样方便添加控件,基类用:CFormView