sinat_24245933 2014-12-05 07:28 采纳率: 0%
浏览 2008

java初学者,老师要求做计算器。页面做好了,就是不知道怎么实现按钮的功能

import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.Font;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.border.EmptyBorder;

public class JSQ extends JFrame{
private static final long serialVersionUID = -8568126884560298943L;

public JSQ(){
      Container C=getContentPane();

      result.setEnabled(false);
      result.setHorizontalAlignment(JTextField.RIGHT);
      result.setColumns(12);
      Font f=new Font("宋体",Font.BOLD,36);
      result.setFont(f);

      JButton clear=new JButton("CE");
      JButton point=new JButton(".");
      JButton count=new JButton("=");
      JButton add=new JButton("+");
      JButton sub=new JButton("—");
      JButton mul=new JButton("*");
      JButton div=new JButton("/");
      JButton back=new JButton("C");
      JButton electric=new JButton("ON/OFF");
      JButton music=new JButton("music");

      JButton[] button=new JButton[10];
      for(int i=0;i<=9;i++){
         button[i]=new JButton(""+i);
      }

      JPanel p=new JPanel();
      p.setLayout(new BorderLayout(0,0));
      p.add(result,BorderLayout.NORTH);
      p.setBorder(new EmptyBorder(5,5,5,5));

      JPanel p1=new JPanel();
      p1.setSize(210,250);
      p1.setLayout(new GridLayout(4,5,5,5));
      for(int i=9;i>=0;i--){
          p1.add(button[i]);
      }
      p1.add(point); 
      p1.add(back);
      p1.setBorder(new EmptyBorder(5,0,0,0));


      JPanel p2=new JPanel();
      p2.setLayout(new GridLayout(4,2,5,5));
      p2.setBorder(new EmptyBorder(5,0,0,0));
      p2.add(music); 
      p2.add(electric);
      p2.add(clear);
      p2.add(add);
      p2.add(sub);
      p2.add(mul);
      p2.add(div);
      p2.add(count);

      JPanel p3=new JPanel();
      p3.setLayout(new GridLayout(1,2,5,5));
      p3.add(p1);
      p3.add(p2);

      p.add(p3,BorderLayout.CENTER);
      C.add(p); 


}


public static void main(String[] args) {
      JSQ J=new JSQ();
      J.setTitle("计算器");
      J.setSize(420,300);
      J.setLocationRelativeTo(null);
      J.setDefaultCloseOperation(EXIT_ON_CLOSE);
      J.setVisible(true); 
}

}

  • 写回答

4条回答

  • tjudream1 2014-12-05 07:53
    关注

    Button应该有事件监听器,在事件监听器中应该有onclick方法,
    当发生点击事件时执行onclick方法

    评论

报告相同问题?

悬赏问题

  • ¥15 关于#python#的问题:求帮写python代码
  • ¥15 LiBeAs的带隙等于0.997eV,计算阴离子的N和P
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 来真人,不要ai!matlab有关常微分方程的问题求解决,
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算
  • ¥15 java如何提取出pdf里的文字?