现在写的一个程序,程序是基于对话框的串口通信程序,当点击一个“实时显示”按钮后,打开一个对话框,以表格或者图形显示从串口接收到的数据包(目前的思想是两个窗口都存在,但同一时间只能有一个窗口显示,可以通过按钮选择要显示的方式),并能实时记录从串口接收的数据,在关闭窗口后,串口的数据会以二进制的形式存到文件中。感觉这种双视图加文档的方式可以实现,但是基于对话框的程序能嵌入视图吗?请各位给小弟一点思路好吗?谢谢。目前表格显示使用CGridCtrl类加入自定义控件实现,但是这种方式的控件大小不能随对话框的窗口大小改变,只能固定为Custom控件的大小,如果加入视图的话就能随窗口的大小改变而改变了。

解决方案 »

  1.   

    你所需要的就是子控件大小可以随对话框大小动态改变吧?
    这个功能实现起来可以不用View,我写过一个简单的示例:http://download.csdn.net/source/3286728
    你可以参考下,字体和控件大小均可随父窗体动态改变。至于你说的在对话框里头嵌入View的方式,我表示很难实现。因为即使采用FrameWnd - View结构来实现表示层的功能,充其量也就是针对 OnPaint 里头的内容,也就是View本身的绘图区。对于View子控件的绘图区,它无能为力,你明白了吗?要实现这种子窗体大小随父窗体动态改变的功能,目前想得到比较好的只有map,也就是示例的那种方式。其他的方式暂时没想到。