babyone
学会思考,学会做人
发贴: 49
积分: 0
|
于 2004-10-21 16:35
谢谢 各位大侠的教导,最近一段时间,我 猛补了一阵基础知识,现在我的程序基本上已经可以运行了, 不过还是存在一个小问题,就是,输出有错误,
附上我修改后的代码: import java.awt.*; import java.awt.event.*;
public class FormatMonth extends MouseAdapter implements TextListener,ActionListener { Frame f; Label lb; TextField tf; Button b1,b2,b3; public static void main(String[] args){ new FormatMonth(); } public FormatMonth(){ f=new Frame("年月日转换小程序"); lb=new Label("输入简写的年月日如(07/12/2004),(按enter键清除)"); b1=new Button("开始"); b1.setActionCommand("b1"); b1.addActionListener(this); b2=new Button("转换"); b2.setActionCommand("b2"); b2.addActionListener(this); b3=new Button("退出"); b3.setActionCommand("b3"); b3.addActionListener(this); tf=new TextField("",20); tf.addTextListener(this); tf.addActionListener(this); f.add(tf,BorderLayout.NORTH); f.add(b1,BorderLayout.WEST); f.add(b2,BorderLayout.CENTER); f.add(b3,BorderLayout.EAST); f.add(lb,BorderLayout.SOUTH); f.pack(); f.setVisible(true); } public void textValueChanged(TextEvent e){ lb.setText(change(tf.getText())); } public void actionPerformed(ActionEvent e){ String cmd=e.getActionCommand(); b1.setEnabled(true); b2.setEnabled(true); b3.setEnabled(true); if(cmd.equals("b1")){ tf.setText(" "); b2.setEnabled(false); b3.setEnabled(false); } else if(cmd.equals("b2")){ lb.setText(change(tf.getText())); b1.setEnabled(false); b3.setEnabled(false); } else{ System.exit(0); } tf.setText(""); } private String change(String sInput){ int x,y,flag; String str1,str2="",str3,str4; x=sInput.indexOf("/"); str1=sInput.substring(0,x-1); flag=Integer.valueOf(str1).intValue(); switch(flag){ case 1:str2="January"; break; case 2:str2="February"; break; case 3:str2="March"; break; case 4:str2="April"; break; case 5:str2="May"; break; case 6:str2="june"; break; case 7:str2="july"; break; case 8:str2="August"; break; case 9:str2="September"; break; case 10:str2="Octorber"; break; case 11:str2="November"; break; case 12:str2="December"; break; default: break; } y=sInput.lastIndexOf("/"); str3=sInput.substring(x,y-1); str4=sInput.substring(y); return (str2+ str3 +str4); } }
本意是如果是输入07/12/2004 就应改输出:December 07 2004 是不是最后一个return语句有问题啊 ?请教~~~~~
在线等答案~~~~
|