Как сделать что бы нажимать можно было лишь на какую-то часть в JFrame? - Java
Формулировка задачи:
Как сделать что бы нажимать можно было лишь на какую-то часть в JFrame? А за её пределами нельзя, пока она открыта.
Решение задачи: «Как сделать что бы нажимать можно было лишь на какую-то часть в JFrame?»
textual
Листинг программы
import javax.swing.*; import java.awt.*; public class Main implements Runnable { private Robot robot = new Robot(); private JFrame frame; private Point p; private boolean b = false; private Main() throws AWTException { frame = new JFrame(); frame.setDefaultCloseOperation(WindowConstants.DO_NOTHING_ON_CLOSE); frame.setUndecorated(true); frame.setPreferredSize(new Dimension(640, 420)); frame.setAlwaysOnTop(true); frame.setFocusable(true); frame.pack(); frame.setLocationRelativeTo(null); frame.setVisible(true); } public static void main(String[]args) { try { Main main = new Main(); Thread thread = new Thread(main); thread.start(); } catch (AWTException e) { e.printStackTrace(); } } @Override public void run() { while (true) { Point mousePos = MouseInfo.getPointerInfo().getLocation(); Rectangle bounds = frame.getBounds(); bounds.setLocation(frame.getLocationOnScreen()); if (!bounds.contains(mousePos)) { p = frame.getLocationOnScreen(); robot.mouseMove(p.x * 2, p.y * 2); frame.setExtendedState(JFrame.NORMAL); } } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д