Мне нужен полный доступ к прозрачной части, т.е. чтобы там можно было нажимать мышкой и т.п. (как будто бы прозрачного окна и нет и оно не перекрывало доступ к видимой части экрана) С помощью какой технологии это можно сделать в Java? Прямо на экране рисовать рамку просто с помощью Graphics? Покажите пример кода.
Попробуйте Robot#createScreenCapture().
BufferedImage image = new Robot().createScreenCapture(new Rectangle(Toolkit.getDefaultToolkit().getScreenSize()));
ImageIO.write(image, "png", new File("/screenshot.png"));
В общем не надо было ничего усложнять, в моём случае для выделения области просто рисуем рамку и считаем что это "окно".
public static void main(String[] args) {
Window w = new Window(null) {
@Override
public void paint(Graphics g) {
g.setColor(Color.orange);
g.drawRect(1400, 200, 50, 200);
}
@Override
public void update(Graphics g) {
paint(g);
}
};
w.setAlwaysOnTop(true);
w.setBounds(w.getGraphicsConfiguration().getBounds());
w.setBackground(new Color(0, true));
w.setVisible(true);
}
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости