ncut_wxj
ncut_wxj
采纳率0%
2017-05-25 01:13 阅读 1.5k

Java中图形用户机界面的数据接收问题

这个程序是哪里的问题,输入的数据没有进入到计算中。

 package name1;
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
//4)  编写图形界面的程序,接收用户输入的一个字符串和一个字符,将字符串中的所有该字符删除,打印输出新生成的结果字符串。
public class Picture extends Applet implements ActionListener
{
    Label prompt1;
    Label prompt2;
    TextField input1;
    TextField input2;
    //double d=0.0;
    //char []a=new char[100];
    String d="null";
    public void init()
    {
        prompt1=new Label("请输入一个字符串以及一个字符:");

        prompt2=new Label("+");
        input1=new TextField(10);
        input2=new TextField(5);
        add(prompt1);
        add(input1);
        add(prompt2);
        add(input2);
        input1.addActionListener(this);
        input2.addActionListener(this);
    }
    public void paint(Graphics g)
    {
        //String d=a.toString();
        g.drawString("最终输出的字符串为:"+d, 10, 50);//10,50是控制x,y的坐标的,在这里控制的是“你输入了数据”这句话的位置
    }
    public void actionPerformed(ActionEvent e)
    {
        char []a=new char[100];
        String b=input1.toString();
        String c=input2.toString();
        char []c1=c.toCharArray();
        char []ch=b.toCharArray();
        int i=0;
        int j=0;
        do{
            if(ch[i]==c1[0])
            {
                i++;
                continue;
            }
            else
            {
                a[j]=ch[i];
                i++;
                j++;
            }
        }while(i<b.length());
        d=a.toString();
        repaint( );
    }
}

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

1条回答 默认 最新

  • yushiyoufight 半杯凉月 2017-05-25 01:51

    package testPro;

    import java.applet.*;
    import java.awt.*;
    import java.awt.event.*;
    //4) 编写图形界面的程序,接收用户输入的一个字符串和一个字符,将字符串中的所有该字符删除,打印输出新生成的结果字符串。
    public class Picture extends Applet
    {
    Label prompt1;
    Label prompt2;
    TextField input1;
    TextField input2;
    //double d=0.0;
    //char []a=new char[100];
    String d="null";
    char []a=new char[100];
    String b;
    String c;
    char []c1 = new char[1000];
    char []ch = new char[1000];
    public void init()
    {
    prompt1=new Label("请输入一个字符串以及一个字符:");

        prompt2=new Label("+");
        input1=new TextField(10);
        input2=new TextField(5);
        add(prompt1);
        add(input1);
        add(prompt2);
        add(input2);
        input1.addKeyListener(new KeyListener() {
    
            @Override
            public void keyTyped(KeyEvent e) {
                // TODO Auto-generated method stub
    
            }
    
            @Override
            public void keyReleased(KeyEvent e) {
                b = input1.getText();
                c1 = b.toCharArray();
    
            }
    
            @Override
            public void keyPressed(KeyEvent e) {
                // TODO Auto-generated method stub
    
            }
        });
        input2.addKeyListener(new KeyListener() {
    
            @Override
            public void keyTyped(KeyEvent e) {
                // TODO Auto-generated method stub
    
            }
    
            @Override
            public void keyReleased(KeyEvent e) {
                // TODO Auto-generated method stub
    
            }
    
            @Override
            public void keyPressed(KeyEvent e2) {
                c = input2.getText();
                ch = c.toCharArray(); 
                //在这里处理你的逻辑,注意下标别越界
    
            }
        });
    }
    public void paint(Graphics g)
    {
        //String d=a.toString();
        g.drawString("最终输出的字符串为:"+d, 10, 50);//10,50是控制x,y的坐标的,在这里控制的是“你输入了数据”这句话的位置
    }
    

    }

    点赞 评论 复制链接分享

相关推荐