回 帖 发 新 帖 刷新版面

主题:哪位高手帮帮修改下程序!谢谢

import java.awt.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class exam3 extends JFrame implements ActionListener{
    JScrollPane helpSP;//帮助面板
    JTextArea helpTA;//帮助文本框
    JPanel p1,p2;
    JButton b1,b2;//计算结果的按钮
    JTextField tf1,tf2,tf3,tf4,tf5,tf6;
    JLabel l1,l2,l3,l4;
    String s1,s2,s3,s4;
    int end1;
    int end2;
    public exam3() {
        JMenuBar mb = new JMenuBar();//创建菜单条
        setJMenuBar(mb);
        //创建菜单
        JMenu fileM = new JMenu("文件");
        JMenu helpM = new JMenu("帮助");
        //将菜单添加到菜单条
        mb.add(fileM);
        mb.add(helpM);
        //创建菜单项
        JMenuItem file1M = new JMenuItem("退出");
        JMenuItem help1M = new JMenuItem("帮助");
        //将菜单项加入菜单中
        fileM.add(file1M);
        helpM.add(help1M);
        //注册监听器
        file1M.addActionListener(this);
        help1M.addActionListener(this);
        
        //帮助面板代码
        helpTA = new JTextArea(5,10);
        helpSP = new JScrollPane(helpTA);
        helpTA.setEditable(false);
        helpTA.append("执行简单计算\n");
        helpTA.append("1.  键入计算的第一个数字。\n");
        helpTA.append("2.  单击“+”执行加、“*”执行乘。\n");
        helpTA.append("3.  键入计算的下一个数字。\n");
        helpTA.append("4.  单击“=”。\n");
        //计算器界面代码
        p1 = new JPanel();
        p2 = new JPanel();
        b1 = new JButton("计算");
        b2 = new JButton("计算");
        tf1 = new JTextField();
        tf2 = new JTextField();
        tf3 = new JTextField();
        tf4 = new JTextField();
        tf5 = new JTextField();
        tf6 = new JTextField();
        l1 = new JLabel("+");
        l2 = new JLabel("=");
        l3 = new JLabel("+");
        l4 = new JLabel("=");
        p1.setLayout(new GridLayout(1,6));
        p1.add(tf1);
        p1.add(l1);
        p1.add(tf2);
        p1.add(l2);
        p1.add(tf3);
        p1.add(b1);
        p2.setLayout(new GridLayout(1,6));
        p2.add(tf4);
        p2.add(l3);
        p2.add(tf5);
        p2.add(l4);
        p2.add(tf6);
        p2.add(b2);
        add(p1,"South");
        add(p2,"North");
        pack();//调整大小 其他也跟着大小
        
        
        
        
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//关闭窗口
    }
    //监听器代码
    public void actionPerformed(ActionEvent e) {
        Object temp = e.getSource();
        //"+"号操作
        
        if(temp == b1) {
            int s1 = Integer.parseInt(tf1.getText());
            int s2 =Integer.parseInt(tf2.getText());
            end1 = s1 + s2;
            tf3.setText("end1");
        }
        
        //"-"号操作
        //退出按钮
        if(e.getActionCommand().equals("退出")) {
            dispose();
            System.exit(0);
        }
        //帮助按钮
        if(e.getActionCommand().equals("帮助")) {
            JOptionPane.showMessageDialog(this, helpSP);
        }
    }
    public static void main(String[] args) {
        exam3 e3 = new exam3();//面板代码
        e3.setTitle("简单计算器");
        e3.setBounds(300,200,400,400);
        e3.setResizable(false);
        e3.setVisible(true);
    }
}

回复列表 (共2个回复)

沙发


[em10]你里面的b1和b2,很混乱~~不知道顺序~~主要的错误的原因是你的按钮没有注册监听~~自己改吧~~简单的事

板凳


深圳市华信群英科技有限公司与知名通信软件公司正式签订定向输送人才的合作协议
针对想进入IT软件行业的有志人士提供专业的企业内训
实训课程采用“2+3”分段教学模式,分为2个月理论强化和3个月项目实训两个阶段
实训前就签订就业安置协议,岗前实训后入职
不仅学费优惠而且是企业定向培训定向招聘,百分百保证就业
有意向请登录www.szctt.com,或加QQ:1179397962做详细咨询

我来回复

您尚未登录,请登录后再回复。点此登录或注册