透明但可点击的JFrame

时间:2014-12-26 21:33:16

标签: java swing jframe

我已经看过几个关于透明JFrame / JWindows / Windows的教程和问题,但他们都有点击'您可以与之互动的财产。有没有办法禁用此功能?

一些相关代码:

//imports
public class Canvas extends JFrame
{
    public Canvas()
    {
        super();

        setBounds(getGraphicsConfiguration().getBounds()); //set fullscreen
        setUndecorated(true);                              //remove decoration
        setBackground(new Color(0, true));                 //make transparent

        setAlwaysOnTop(true);
        setFocusable(true);
        requestFocus();
        setVisible(true);

        //Esc to close
        addKeyListener(new KeyAdapter()
        {
            @Override
            public void keyPressed(KeyEvent e)
            {
                if(e.getKeyCode() == KeyEvent.VK_ESCAPE)
                {
                    System.exit(0);
                }
            }
        });
    }
}

通过使用低alpha设置设置背景,我基本上可以达到我想要的效果:

setBackground(new Color(0, 0, 0, 1)); //1 alpha (1 out of 255)

然而,这更像是一个黑客而不是一个真正的解决方案。有没有更好的方法来实现这一目标?

0 个答案:

没有答案