【问题标题】:How to change JLabel background when I click the JLabel in Java当我在 Java 中单击 JLabel 时如何更改 JLabel 背景
【发布时间】:2017-10-26 15:20:28
【问题描述】:

我想使用 mouseClicked 将我的 JLabel 背景更改为蓝色。我的 JLabel 的名称是 lblKembali。我尝试了此代码,当我尝试单击标签时,它没有改变背景。请帮忙。谢谢。

lblKembali = new JLabel("Kembali");
lblKembali.setPreferredSize(new Dimension(400,30));
lblKembali.setMaximumSize(getPreferredSize());    
lblKembali.addMouseListener(new java.awt.event.MouseAdapter() {
            @Override
            public void mouseClicked(MouseEvent e) {
                    lblKembali.setBackground(Color.BLUE);
            }
        });

【问题讨论】:

标签: java swing jlabel


【解决方案1】:

默认情况下,JLabel 是不透明的,因此不会绘制其背景。创建时需要使标签不透明:

lblKembali = new JLabel("Kembali");
lblKembali.setOpaque( true );

你也可以让你的监听器更通用,这样它就可以被多个组件共享:

public void mouseClicked(MouseEvent e) 
{
    Component c = e.getComponent();
    c.setBackground(Color.BLUE);
}

【讨论】:

    猜你喜欢
    • 2018-06-05
    • 1970-01-01
    • 2012-12-11
    • 1970-01-01
    • 1970-01-01
    • 2012-02-21
    • 1970-01-01
    • 2018-08-31
    • 1970-01-01
    相关资源
    最近更新 更多