MFC编程中,如何更改坐标原点的位置!

MFC编程中,如何更改坐标原点的位置!,第1张

坐标原点是可以的,不过这个问题就不要重设了。

int x = GetSystemMetric(SM_CXFULLSCREEN)

int y = GetSystemMetric(SM_CYFULLSCREEN)//获取屏幕宽度和高度

CRect rect

GetClientRect(&rect)

SetWindowPos(NULL,(x-rect.left)/2,

(y-rect.bottom)/2,rect.right,rect.bottom,SWP_NOZORDER)

(默认)左上角为原点O,向右为 X 轴正向,向下为Y 轴正向;

若想改变原点,可采用CDC类的成员函数SetViewportOrg (int x, int y);

例如:设窗口中心点为坐标原点

CDC* pDC = GetDC()

CRect rect

GetClientRect(&rect)

pDC->SetViewportOrg(rect.right/2, rect.bottom/2)

若还想改变 X , Y 方向,比如常用的笛卡尔坐标系,即 X 轴右为正,Y 轴上为正,

可用函数SetMapMode( ****),参数自己可去查MSDN,根据自己需要设置。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/tougao/7773977.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-09
下一篇 2023-04-09

发表评论

登录后才能评论

评论列表(0条)

保存