java中怎么获取一个窗口移动后的坐标

在网上查了很多,很久发现都是getX()等常用的API方法,这些方法根本不能获取一个移动后的窗口的坐标。获取的都是窗口的初始坐标。窗口移动后,他的坐标变化了,用这些方法是不能获取的。后来找高手在谷歌上用英文查询才查到下面这些方法。我相信肯定能帮助不少人。不用像我一样话费很久才能解决。

void javax.swing.SwingUtilities.convertPointToScreen(Point p, Component c)

Convert a point from a component's coordinate system to screen coordinates.

Parameters:

p a Point object (converted to the new coordinate system)

c a Component object

eg: Point pt = new Point();

pt.x = graphicsPanel.getX();

pt.y = graphicsPanel.getY();

SwingUtilities.convertPointToScreen(pt, graphicsPanel.getParent());

Rectangle captureSize = new Rectangle(pt.x,pt.y,graphicsPanel.getWidth(),

graphicsPanel.getHeight());

◆Point convertPoint(Component source, int x, int y, Component estination)

◆Point convertPoint(Component source, Point aPoint, Component destination)

将一个组件上的点坐标转换成另一个组件上的坐标点。

◆void convertPointFromScreen(Point p, Component c)

将一个屏暮坐标点转换成一个组件的坐标点.

◆void convertPointToScreen(Point p, omponent c)

将一个组件上的坐标点转换成屏暮坐标。

◆Rectangle convertRectangle(Component source, Rectangle aRectangle, Component destination)

将一个组件上的矩形坐标转换成另一个组件上的矩形坐标.

我用的是convertPointToScreen(Point p, Component c)方法,上面是我的程序所用的那部分内容。这个函数能够根据相对性转化出移动后窗口的坐标(就是移动后窗口左上角坐标),然后我用Rectangle类截取窗口图片。

不懂的还可以由javax.swing.SwingUtilities.convertPointToScreen查询javaAPI来具体了解 希望能够帮助读者

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值