JTextField tx1=new JtextField(10);
JTextField tx2=new JtextField(10);
JButton bt1=new JButton("a");
....
bt1.addActionListener(al);
ActionListener al=new ActionListener()
{
.....(event e)
{
/*
这里想用tx1.getText()然后把字符串转化成数组,进行一个算法if(e.getSource()==bt1).....;,然后再转回String在tx2.setText()显示出来.
用到getChars()与String.valueOf();ECLIPSE检查语法没错误.运行后点bt1会报异常.大概意思好象是UNKNOW SOURCE
*/
}};代码暂时发不上来.请问这是什么问题?
JTextField tx2=new JtextField(10);
JButton bt1=new JButton("a");
....
bt1.addActionListener(al);
ActionListener al=new ActionListener()
{
.....(event e)
{
/*
这里想用tx1.getText()然后把字符串转化成数组,进行一个算法if(e.getSource()==bt1).....;,然后再转回String在tx2.setText()显示出来.
用到getChars()与String.valueOf();ECLIPSE检查语法没错误.运行后点bt1会报异常.大概意思好象是UNKNOW SOURCE
*/
}};代码暂时发不上来.请问这是什么问题?
import javax.swing.*;
import java.awt.event.*;
public class IoGUI extends JFrame{
JPanel pane;
JButton button1,button2;
JTextField text1,text2;
JLabel title;
String str="C:\\Documents and Settings\\桌面\\PIC\\";
IoGUI()
{super();
pane=new JPanel();
this.getContentPane().add(pane);
title=new JLabel(new ImageIcon(str+"sister.jpg"));
text1=new JTextField(10);
text2=new JTextField(10);
button1=new JButton("计算");
button2=new JButton("concel");
ActionListener al=new ActionListener()
{
public void actionPerformed(ActionEvent e) {
if(e.getSource()==button1){
String in= text1.getText
if(in==null) JOptionPane.showMessageDialog(null,"Please in put");
int len=in.length();
char ch[]=new char[len];
char si[]=new char[100];
si[0]=ch[0];
in.getChars(0,len,ch,0);
while(ch[len-1]!='\0')
{if(ch[len]==si[0])
{ch[len]='A';
break;}
else if(len==0)break;
else len-=1;
}
String string=String.valueOf(ch);
text2.setText(string);
}
if(e.getSource()==button2)JOptionPane.showMessageDialog(null,"Good bye");
System.exit(0);
}
};
button1.addActionListener(al);
button2.addActionListener(al);
pane.add(title);
pane.add(text1);pane.add(text2);
pane.add(button1);pane.add(button2);
setVisible(true);
setSize(700,600);
setLocation(200,200);
setResizable(false);
}
public static void main(String[] args) {
new IoGUI(); }}
at test2.IoGUI$1.actionPerformed(IoGUI.java:32)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
String in= text1.getText
if(in==null) JOptionPane.showMessageDialog(null,"Please in put"); 这里有点小错误
然后运行程序没有报异常,不过就出现一个panel,上面什么都没有,应该不是楼主期待的,
所以楼主的代码的界面还没做好
界面做好再加上事件吧。
{if(ch[len]==si[0])
{ch[len]='A';
break;}
else if(len==0)break;
else len-=1;
} 越界了
改成这样
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Test extends JFrame{
JPanel pane;
JButton button1,button2;
JTextField text1,text2;
JLabel title;
String str="C:\\Documents and Settings\\桌面\\PIC\\";
Test()
{super();
pane=new JPanel();
Container con=getContentPane();
title=new JLabel(new ImageIcon(str+"sister.jpg"));
text1=new JTextField(10);
text2=new JTextField(10);
button1=new JButton("计算");
button2=new JButton("concel"); ActionListener al=new ActionListener()
{
public void actionPerformed(ActionEvent e) {
if(e.getSource()==button1){
String in= text1.getText() ;
if(in==null) JOptionPane.showMessageDialog(null,"Please in put"); int len=in.length();
char ch[]=in.toCharArray();char si[]=new char[len];
si[0]=ch[0];
in.getChars(0,len,ch,0);
while(ch[len-1]!='\0')
{if(ch[len-1]==si[0])
{ch[len-1]='A';
break;}
else if(len==0)break;
else len-=1;
} String string=String.valueOf(ch);
text2.setText(string);
}
if(e.getSource()==button2)
{
JOptionPane.showMessageDialog(null,"Good bye");
System.exit(0);
}
} };
button1.addActionListener(al);
button2.addActionListener(al);
pane.add(title);
pane.add(text1);pane.add(text2);
pane.add(button1);pane.add(button2);
con.add(pane);
setSize(700,600);
setLocation(200,200);
setResizable(false);
setVisible(true);
}
public static void main(String[] args) {
new Test(); } }
现在在别人的机器上。调不了...
6楼能解释下么?我这里都能出来.有图片BUTTON,和TEXT.
点button1就显示有异常.