java textlistener_关于Swing添加addTextListener

importjava.awt.*;importjava.awt.event.*;importjavax.swing.*;publicclassMycolorextendsJFrame{Colorc;intred;intgreen;intblue;Stringinfo;JTextArealbeMycolor;JScrollBarhsbR;J...

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

public class Mycolor extends JFrame{

Color c;

int red;

int green;

int blue;

String info;

JTextArea lbeMycolor;

JScrollBar hsbR;

JScrollBar hsbG;

JScrollBar hsbB;

private JTextField txtR;

private JTextField txtG;

private JTextField txtB;

private JLabel labR,labG,labB;

public Mycolor(){

createComponents();

registerEventHandlers();

layoutComponents();

setTitle("aaa");

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

pack();}

private void createComponents(){

lbeMycolor=new JTextArea(7,20);

lbeMycolor.setEditable(false);

lbeMycolor.setBackground(Color.RED);

hsbR=new JScrollBar(JScrollBar.HORIZONTAL,0,10,0,255);

hsbG=new JScrollBar(JScrollBar.HORIZONTAL,125,10,0,255);

hsbB=new JScrollBar(JScrollBar.HORIZONTAL,128,10,0,255);

hsbB.setPreferredSize(new Dimension(200,18));

hsbG.setPreferredSize(new Dimension(200,18));

hsbR.setPreferredSize(new Dimension(200,18));

txtR=new JTextField();

txtR.setPreferredSize(new Dimension(4,18));

txtR.setText("0");

txtG=new JTextField(3);

txtG.setPreferredSize(new Dimension(4,18));

txtG.setText("125");

txtB=new JTextField(3);

txtB.setPreferredSize(new Dimension(4,18));

txtB.setText("128");

labR=new JLabel("R=");

labG=new JLabel("G=");

labB=new JLabel("B=");

}

private void layoutComponents(){

Container c=this.getContentPane();

JPanel jsbPane=new JPanel(new GridLayout(0,1,0,50));

jsbPane.add(hsbR);

jsbPane.add(hsbG);

jsbPane.add(hsbB);

JPanel jxtPane=new JPanel(new GridLayout(0,1,0,50));

jxtPane.add(txtR);

jxtPane.add(txtG);

jxtPane.add(txtB);

JPanel jabPane=new JPanel(new GridLayout(0,1,0,50));

jabPane.add(labR);

jabPane.add(labG);

jabPane.add(labB);

JPanel panel=new JPanel(new FlowLayout(FlowLayout.LEFT));

panel.setBorder(BorderFactory.createEmptyBorder(20,10,10,20));

panel.add(jsbPane);

panel.add(lbeMycolor);

panel.add(jabPane);

panel.add(jxtPane);

c.add(panel);

}

private void registerEventHandlers(){

TextFieldListener handler1=new TextFieldListener();

txtR.addTextListener(handler1);

txtG.addTextListener(handler1);

txtB.addTextListener(handler1);

}

public static void main(String[] args){

Mycolor fr=new Mycolor();

fr.setVisible(true);

}

private class TextFieldListener implements TextListener{

public void textValueChanged(TextEvent evt){

red=Integer.parseInt(txtR.getText());

green=Integer.parseInt(txtG.getText());

blue=Integer.parseInt(txtB.getText());

hsbR.setValue(Integer.valueOf(txtR.getText()));

hsbG.setValue(Integer.valueOf(txtG.getText()));

hsbB.setValue(Integer.valueOf(txtB.getText()));

lbeMycolor.setBackground(new Color(red,green,blue));

}

}

}

经测试 addTextListener()添加监听事件时出现 未找到符号 ,变量符号等不会出现输入错误,其他地方没有问题。请大虾帮吗解惑,解决后加分

展开

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值