我是一名初学者,正在学习java,我的任务是制作一个自动点击工具。我使用 JFrame 作为接口(interface),但现在我遇到了这个问题: - 我想在用户单击按钮(例如 Ctrl)后获取与屏幕相关的指针位置。我在 JFrame 上添加了一个按钮,单击它,JFrame 将最小化,以便用户可以在桌面上移动指针。 - 每当用户按下 Ctrl 键时,我应该打印当时指针的 x,y 位置。 - 我一直在寻找解决方案,但我的大脑似乎跟不上。
如果有人能为我提供一个简单的例子,我将不胜感激。谢谢。 到目前为止我的想法:
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
this.setState(JFrame.ICONIFIED);
this.addKeyListener(this);
}
@Override
public void keyPressed(KeyEvent e) {
if (e.getKeyCode() == KeyEvent.CTRL_DOWN_MASK) {
PointerInfo a = MouseInfo.getPointerInfo();
Point b = a.getLocation();
int x = (int) b.getX();
int y = (int) b.getY();
System.out.println(x + ":" + y);
}
}
最佳答案
I want to get location of pointer related to screen after user clicked a button..
单击按钮时:
- 隐藏框架。
- 获取整个桌面的屏幕截图。
- 在
JWindow
中的JLabel
中显示屏幕截图 - 向标签添加一个
MouseListener
。 - 从
MouseEvent
获取Point
。
E.G.类似于 this answer 中所示的内容.
关于java - JFrame最小化时如何捕获按键事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24432740/