我在单文档的客户区画了很多数学函数的曲线,但最小化或窗口改变后就消失了,
我知道要重写视图类的OnDraw函数,但这较麻烦,几乎代码要重写一遍,
敢问:有没有简单的方法把视图客户区最小化时保存下来,重现时就显示出来?
我知道要重写视图类的OnDraw函数,但这较麻烦,几乎代码要重写一遍,
敢问:有没有简单的方法把视图客户区最小化时保存下来,重现时就显示出来?
解决方案 »
- 关于windows api的问题
- CString问题
- 数据库的时间格式
- First-chance exception in oilcan.exe (KERNEL32.DLL): 0xE06D7363: Microsoft C++ Exception.
- 这是什么编码?
- 自定义消息的发送和接收
- 我在一个对话框程序中设一控件的焦点,为什么不行,应在哪儿设。能否详细讲一下,OnInitDialog()做些什么?
- 请问谁有ip phone的资料,我想看一下,谢谢~~
- 我在MFC的OCX中用CWnd生成了一个小窗体,无法收到任何消息!
- 请说出面向对象技术的缺陷,以及面向对象技术的发展趋势,是否向组件方向发展?越详细学好,越理论越好。
- vs.net 2003 里的MSDN为什么好多内容都没有??
- Date Time Picker如何设置时间??(在线)
中调用你的函数Invalidate调用Ondarw
可是我的函数里面还有些别的功能,不好直接调用。
并且,画那些曲线也很麻烦,要是在OnDraw再重复一遍,会很花时间去写。
比如你要画的那些曲线是通过一个菜单或按钮的响应函数去画的,那你把OnXXXXX里面的所有代码都放到另一个函数DrawCurves里,在这个OnXXXXX里和OnDraw里都调用DrawCurves这个函数就结了,完全不至于多花时间吧?不过要注意的是,你需要一个标志来表明是不是曾经点击了那个菜单或按钮以决定在OnDraw里调用不调用DrawCurves,这样才能让二者同步。(这样的话,你甚至可以在OnXXXXX里面都不用调用DrawCurves,只是简单地设置这个标志,然后调用Invalidate(),由OnDraw负责帮你调用DrawCurves。)