
要实现这样的效果需要知道相似位置在这两幅图中的坐标以及这两个控件在对话框上的坐标,然后通过加减运算就可以得到图像上的相似区域在对话框的坐标,直接将这两个坐标用直线连接就可以了。
为此,如何获得控件在对话框上的坐标是关键问题。编写了如下的测试小程序,目的是将两个picture控件中的点用直线连接起来,比较直观的是picture控件的四个角,所以程序中是将控件的拐角连接起来。首先在对话框上并排放置两个同样大小的picture控件,将他们的标识分别设成IDC_LEFT和IDC_RIGHT,然后添加两个编辑框用于显示picture控件的大小,给这两个编辑框添加相应的数据成员m_row和m_colume。添加一个按钮用于连接picture控件中的点,为这个按钮添加
成员函数
OnMatch()
。
void
CControlDlg::OnMatch(){//
TODO:
Add
your
control
notification
handler
code
here
CRect
rectL,rectR;
参考一下
point
是相对CLYHchxuView的坐标
如果你要获的是相对CLYHchxuView左上角的坐标
就不需要转换
如果你你要获的是相对程序主窗口左上角的坐标
可以这样算
void CLYHchxuView::OnLButtonDblClk(UINT nFlags, CPoint point)
{
// TODO: Add your message handler code here and/or call default
CRect rc;
GetParent()->GetWindowRect(&rc);
ClientToScreen(&point);
docx=pointx-rcleft;
docy=pointy-rctop;
Invalidate();
CView::OnLButtonDblClk(nFlags, point);
}
以上就是关于MFC如何获取控件在对话框上的位置坐标全部的内容,包括:MFC如何获取控件在对话框上的位置坐标、急!!!MFC中如何获取鼠标相对坐标、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)