按下后,我的JButton停留在屏幕上

时间:2017-09-27 11:48:42

标签: java swing jbutton

我的JButton代码在这里:

JButton b = new JButton("JButton");
b.setBounds(100, 100, 100, 50);
b.addActionListener(new ActionListener() {
    @Override
    public void actionPerformed(ActionEvent arg0) {
        g.setColor(Color.BLACK);
        g.fillRect(0, 0, 1000, 500);
    }
});
frame.add(b);

按下按钮后,这会使我的屏幕变黑,但按钮只停留在我的JFrame上。我不能像过去那样找到这个JButton出了什么问题 我遇到的另一个错误是我的JButton占用了整个屏幕,即使我将其边界设置为特定区域。

1 个答案:

答案 0 :(得分:0)

您可能会在Graphics g之前对JButton b进行定位,因此JButton始终显示在顶层。

您必须使用setVisible(false)方法明确隐藏点击操作上的按钮。

b.addActionListener(new ActionListener() {
    @Override
    public void actionPerformed(ActionEvent arg0) {
        b.setVisible(false);
        g.setColor(Color.BLACK);
        g.fillRect(0, 0, 1000, 500);
    }
});