多文档程序,如何通过调用函数实现窗口内画图?

tlxfh 2009-03-13 09:52:44
我在多文档的应用程序工程里,建立了一个专门用于画图的类,我要画一个十字定位线,要横竖两条线布满窗口的那种。(不是直接在OnDraw里写代码):CLineDraw.在该类中定义了一个绘图函数(具体画图部分代码由于不是重点,也不是问题所在所以就没有贴出来)

void CLineDraw::DrawLine(CWnd*pWnd,int Width,int Height,CRect rect)
{
CreateEx(WS_EX_TOPMOST,
AfxRegisterWndClass(CS_DBLCLKS, AfxGetApp()->LoadStandardCursor(IDC_ARROW)),
"Measure",WS_VSCROLL/*WS_POPUP*/|WS_VISIBLE,rect.left, rect.top, m_nScreenWidth, m_nScreenHeight, NULL, NULL, NULL );


}
这个CreateEx我是想参考一个人的用于创建一个窗口的代码,也就是相当于把我当前窗口放到它新建窗口里。这样的确可以实现在里面画图,但是我是想当鼠标按下菜单里的“开始绘图”按钮后,鼠标移动到当前窗口内才开始立即绘制十字定位线。而不是另外新建窗口绘图。我想请问这个DrawLine函数里应该将CreateEx应该换成什么样的呢,或者说该如何编程实现呢??
以下是我的放在视类我在加入了一个菜单按钮的响应函数(用来实现开始画图)

void CMyView::OnLineDraw()
{
CRect rect;
GetWindowRect(&rect);
int nWidth=rect.width();
int nHeight=rect.Height();
CLineDraw pLine=new CLineDraw;
pLine->DrawLine(this,nWidth,nHeight,rect);

}
...全文
114 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
ecustman 2009-03-28
  • 打赏
  • 举报
回复

m_nCurrentMeasure=MEASURE_SINGLELINE;
m_pMeasure=new CMeasureLine;
m_pMeasure->CreateMeasure(NULL,this,nWidth,nHeight, rect);

19,464

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧