窗口界面实现的简单流程(简易计算器)
第一次写关于技术的东西,还有就是在下还是菜鸟一个,无法写出高深的技术,只能从我个人角度觉得值得注意的角度谈谈拙见。
我想谈谈这次做简易计算器窗口界面的体会,下面是我用java写的一个简易计算器的部分代码:
--------------------------------------------------------------------------
public class CaculationDemo extends JFrame implements KeyListener //继承键盘监听器 形成自监听,继承JFrame,主框架
{
private Container content; //声明容器类
private JButton b1,b2,b3,b4,b5,b6,b7,b8,b9,b0; //声明需按钮
private JButton bAdd,bSbt,bMul,bDvd,bSqrt,bPer,b1x,bEqual;
private JButton bzf,bPoint,bC,bCE,bBs;
private JPanel pNumber,pLetter; //声明面板(中间容器)
private JTextArea ta; //声明文本区域
private double first = 0,second = 0; //声明声明运算数first和second
private StringBuffer str;
int j = 0, k = 4; //j控制 按(+ - * /)后是否进行运算;k代表按下那个运算符(+ - * /)
CaculationDemo()
{
super("帅哥计算器");content = getContentPane(); //实例化容器content并设置管理器
content.setLayout(new BorderLayout());
pNumber = new JPanel();
pLetter = new JPanel(); //实例化面板pNumber, pLetter
ta = new JTextArea(1,20); //实例化文本区域并设置
ta.setEditable(false);
ta.setColumns(20);
ta.setBounds(15,10,260,30);
ta.setText("0");
ta.addKeyListener(this);
Font f1 = new Font("宋体",Font.PLAIN,15); //声明并实例化Fon,用于设置按钮字体
Font f2 = new Font("宋体",Font.PLAIN,10);
str=new StringBuffer(); //实例化一个字符串
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。//将数字键及".","+/-"等键添加到面板pNumber中并设置在主框架的位置和小
pNumber.setLayout(new GridLayout(4,5,4,4));
pNumber.add(b7); pNumber.add(b8);
pNumber.add(b9); pNumber.add(bDvd);
pNumber.add(bSqrt); pNumber.add(b4);
pNumber.add(b5); pNumber.add(b6);
pNumber.add(bMul); pNumber.add(bPer);
pNumber.add(b1); pNumber.add(b2);
pNumber.add(b3); pNumber.add(bSbt);
pNumber.add(b1x); pNumber.add(b0);
pNumber.add(bzf); pNumber.add(bPoint);
pNumber.add(bAdd); pNumber.add(bEqual);
pNumber.setBounds(0,95,290,200);
//将键C,CE,Backspace添加到面板pLetter并设置在主框架的位置和大小
pLetter.setLayout(new GridLayout(1,3,5,5));
pLetter.add(bBs);pLetter.add(bCE); pLetter.add(bC);
pLetter.setBounds(0,47,290,43);
//设置主框架以及添加他,pNumber,pLetter
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
content.setLayout(null);content.add(ta);content.add(pLetter);content.add(pNumber);
setSize(290,325); setVisible(true);
}
public static void main(String args[])
{
CaculationDemo cd = new CaculationDemo();
}
--------------------------------------------------------------------------
1