Windows 窗体的坐标系

Windows 窗体的坐标系基于设备坐标,在 Windows 窗体中绘制时的基本量度单位是设备单位(通常为像素)。屏幕上的点通过 x 和 y 坐标对描述,x 坐标向右递增,y 坐标从上往下递增。原点相对于屏幕的位置因指定的是屏幕坐标还是工作区坐标而异。

屏幕坐标

Windows 窗体应用程序用屏幕坐标指定窗口在屏幕上的位置。对于屏幕坐标而言,原点是屏幕的左上角。窗口的完整位置通常用 Rectangle 结构来描述,该结构包含定义窗口的左上角和右下角的两个点的屏幕坐标。

工作区坐标

Windows 窗体应用程序使用工作区坐标指定窗体或控件中的点的位置。工作区坐标的原点是控件或窗体的工作区的左上角。工作区坐标确保了无论窗体或控件在屏幕上的位置如何,应用程序在窗体或控件中绘制期间都可以使用一致的坐标值。

工作区的尺寸也用 Rectangle 结构来描述,该结构包含该区域的工作区坐标。在所有情况下,矩形的左上角坐标都包含在工作区中,而右下角坐标则排除在工作区之外。图形操作不包括工作区的右边缘和下边缘。例如,FillRectangle 方法将一直填充到指定矩形的右边缘和下边缘,但是不包括这两条边。

从一类坐标映射到另一类坐标

您可能偶尔需要从屏幕坐标映射到工作区坐标。通过使用 Control 类中的 PointToClientPointToScreen 方法,可以轻松实现这一映射。例如,ControlMousePosition 属性用屏幕坐标报告,但是您可能想将它转换成工作区坐标。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值