首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JColorChooser不会更改JLabel的文本颜色

JColorChooser不会更改JLabel的文本颜色
EN

Stack Overflow用户
提问于 2013-04-05 06:13:00
回答 1查看 1.4K关注 0票数 0

我正在尝试创建一个上面带有JLabel的JColorChooser对话框,以便JLabel文本颜色将更改为用户使用JColorChooser选择的颜色。这是我到目前为止所拥有的,但它并没有为我编译。

代码语言:javascript
复制
import javax.swing.*;
import java.awt.*;
import javax.swing.event.*;

public class JColorChooserExample extends JFrame
{       
private JColorChooser colorChooser;                                // instance variables          
private JLabel banner;

public JColorChooserExample()                                             // constructor
{
    add(banner = new JLabel("Welcome to the Tutorial Zone!", JLabel.CENTER), BorderLayout.NORTH);
  banner.setForeground(Color.BLACK);
    add(colorChooser = new JColorChooser(banner.getForeground()), BorderLayout.SOUTH);

    ListenerClass listener = new ListenerClass();
    colorChooser.addChangeListener(listener);
}

public static void main(String[] args)
{       
    JColorChooserExample frame = new JColorChooserExample();   // new frame object 
    frame.setTitle("JColorChooser Example");                   // set frame title
    frame.pack();                                                             // sizes the frame so components fit frame  
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);      // ends program on frame closing
    frame.setLocationRelativeTo(null);                                // centre frame
    frame.setVisible(true);                                    // make frame visible
}

private class ListenerClass implements ChangeListener
{   
    public void stateChanged(ChangeEvent e) 
    {
        Color newColor = colorChooser.getColor();
        banner.setForeground(newColor);
    }
}
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-04-05 11:30:21

ChangeListener应该向JColorChooserColorSelectionModel注册,而不是直接向JColorChooser本身注册。

代码语言:javascript
复制
colorChooser.getSelectionModel().addChangeListener(listener);

How to Use Color Choosers

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15822681

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档