帮新人 找找错 感谢你 偶一般习惯将监听器写为匿名的内部类.TextListener txtls = new TextListener(){public void textValueChanged(TextEvent e) {...}}; 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 t1.addTextListener(this);t1.addTextListener(this);t2.addTextListener(this); 没有注册事件处理程序t1.addTextListener(new new TextListener(){public void textValueChanged(TextEvent e){...}});不用内部类也是一样的~ import java.awt.*;import java.awt.event.*;import javax.swing.*;public class ZH extends JFrame implements TextListener,ActionListener{ JLabel l1; JLabel l2; TextField t1; TextField t2; JButton b1; public ZH() { setTitle("转换"); Container con=getContentPane(); con.setLayout(new GridLayout(3,2)); l1=new JLabel("原身份证号"); l2=new JLabel("转换后的身份证号"); t1=new TextField(20); t2=new TextField(20); con.add(l1);con.add(t1);con.add(l2);con.add(t2); con.add(b1); t1.addTextListener(this); t2.addTextListener(this); setSize(300,150); setVisible(true); } public void actionPerformed(ActionEvent e) { t1.setText(""); } public void textValueChanged(TextEvent e) { int len=0; ss=t1.getText(); if(ss!=null) { char ch[]=ss.toCharArray(); for(int i=0;i<=ss.length();i++) { if(ch[i]>='0'&&ch[i]<='9') { ch[len++]=ch[i]; } else { break; } } } else{return;} } public void paint(Graphics g) { g.drawString("请输入数字",60,60); public static void main(String args[]) { new ZH(); }}输入非法字符后 显示提示消息 当输入满15个字符 就停止接受 怎么实现???输入数字和点按钮就报地址下标越界 为什么?我怎么在public void textValueChanged方法里调用paint? 用repaint()不行 for(int i=0;i<=ss.length();i++)应该是for(int i=0;i<ss.length();i++)就不会越界了 把接受的数字先当成字符串的形式来出来,可以用length()方法来判断是不是输入了15个了。我也是菜鸟,,哈哈。 关于用BufferedReader读取文件 菜鸟求教!!请问该JAVA代码如何写。 jxl写excel文件 不可读内容 鬼问题一点儿思路也没有,帮忙的给100了! jdbc-odbc的问题 题: 如果您是第一次提问,建议您阅读"提问的智慧" 或者直接使用“CSDN 快速搜索” java反射问题 如何生成8位的随机码? applet中连接数据库出问题 求助大佬如何去除JTree的图标 100分求教!向上转型时如何能够引用派生类的Field? 有点小问题,希望各位兄台给看看,我是个新人,渴望以后能多交流。
t2.addTextListener(this); 没有注册事件处理程序t1.addTextListener(new new TextListener(){public void textValueChanged(TextEvent e)
{
...
}
});不用内部类也是一样的~
import java.awt.event.*;
import javax.swing.*;public class ZH extends JFrame implements TextListener,ActionListener
{
JLabel l1;
JLabel l2;
TextField t1;
TextField t2;
JButton b1;
public ZH()
{
setTitle("转换");
Container con=getContentPane();
con.setLayout(new GridLayout(3,2));
l1=new JLabel("原身份证号");
l2=new JLabel("转换后的身份证号");
t1=new TextField(20);
t2=new TextField(20);
con.add(l1);con.add(t1);con.add(l2);con.add(t2);
con.add(b1);
t1.addTextListener(this);
t2.addTextListener(this); setSize(300,150);
setVisible(true);
} public void actionPerformed(ActionEvent e)
{
t1.setText("");
}
public void textValueChanged(TextEvent e)
{
int len=0;
ss=t1.getText();
if(ss!=null)
{
char ch[]=ss.toCharArray();
for(int i=0;i<=ss.length();i++)
{
if(ch[i]>='0'&&ch[i]<='9')
{
ch[len++]=ch[i];
}
else
{
break;
}
}
}
else{return;}
} public void paint(Graphics g)
{
g.drawString("请输入数字",60,60); public static void main(String args[])
{
new ZH();
}
}输入非法字符后 显示提示消息
当输入满15个字符 就停止接受 怎么实现???
输入数字和点按钮就报地址下标越界 为什么?
我怎么在public void textValueChanged方法里调用paint? 用repaint()不行
应该是
for(int i=0;i<ss.length();i++)
就不会越界了
我也是菜鸟,,哈哈。