(1)定义视大小SetScrollSizes(5000,5000);
(2)定义菜单消息映射ON_COMMAND(IDM_DRAWRECTANGLE,OnDrawrectangle)
(3)在菜单函数下画矩形
void CMyScrollView::OnDrawrectangle()
{
CDC* pDC=this->GetDC();
pDC->Rectangle(50,50,4000,4000);
}
滚动后原来看不见的区域,现在看见了,但是空的,原来看得见的区域,滚动后看不见了,再滚回来也是空的。如果滚动到一个新的位置,此时点击菜单,则从窗口的(50,50)画起,而不是从视的(50,50)画起。用Invalidate()函数则一滚动什么也没有了(在OnScroll或者OnVScroll,OnHscroll都是这样。)当然放在OnDraw函数里画则没什么问题,除了滚动时会闪烁外。但我的目的是通过菜单操作,因为需要各种不同的图形(如:先画底图,再铺画轨迹图,根据用户输入,轨道图需要调整等)。
多谢。
(2)定义菜单消息映射ON_COMMAND(IDM_DRAWRECTANGLE,OnDrawrectangle)
(3)在菜单函数下画矩形
void CMyScrollView::OnDrawrectangle()
{
CDC* pDC=this->GetDC();
pDC->Rectangle(50,50,4000,4000);
}
滚动后原来看不见的区域,现在看见了,但是空的,原来看得见的区域,滚动后看不见了,再滚回来也是空的。如果滚动到一个新的位置,此时点击菜单,则从窗口的(50,50)画起,而不是从视的(50,50)画起。用Invalidate()函数则一滚动什么也没有了(在OnScroll或者OnVScroll,OnHscroll都是这样。)当然放在OnDraw函数里画则没什么问题,除了滚动时会闪烁外。但我的目的是通过菜单操作,因为需要各种不同的图形(如:先画底图,再铺画轨迹图,根据用户输入,轨道图需要调整等)。
多谢。
解决方案 »
- 如何在MFC中使用HttpWebRequest类?????
- vc++6.0中纯api创建菜单,为什么出现错误,请各位老大帮帮忙??
- 送分题,高手一看就知道解答?关于static UINT indicators[]数组的
- 如何让可执行程序接受参数,如何处理参数?
- 请问那里有《windows核心编程》CHM版的下载?
- 我的对话框只要一加入RichEdit控件,对话框就给压住了。怎么DoModal()也蹦不出来,怪也!
- 我需要用代码实现cacls这个命令,有相关资料么?(不使用system)
- 在线等待--如何在listbox中插入标题列???(sdk编程)
- 哪有木马程序的源代码可以下载
- 求购播放、保存流媒体软件(用钱买),急需!!
- VC+SQL
- 请问,怎样在CreateDispatch("Word.Application")之前判断一下是否已经有打开的Word.Application,如果有就不执行App.CreateDispatch("W
根本没有调你的菜单这样试一下你就明白了,你强制在 OnDraw 中调用你的 OnDrawrectangle()
再怎么动都有啦
如果保存画的内容,是保存图片还是保存为DC。如果保存DC的话,应该建一个与OnDraw(CDC* pDC)函数里的pDC兼容的吧。那就必须作为一个类变量,在构造函数里建立(除非用标志第一次执行OnDraw函数时建立),具体应该怎么做呢?请赐教,我对OnDraw里的参数不清楚来源。