62,614
社区成员
发帖
与我相关
我的任务
分享
package Calculator;
import javax.swing.*;
import java.awt.*;
public class Calculator{
JFrame calculator;//整体框架
JPanel ButtonArea;//按扭区域
JPanel TextArea;//文字显示区域
JButton button[];//按钮数组
JTextField textField;//文本框
GridBagLayout gridBagLayout;//GridBagLayout布局对象
GridBagConstraints gridBagConstraints;//GridBagLayout条件管理对象
String chars[]={"CE","C","DEL","/","7","8","9","*","4",
"5","6","-","1","2","3","+","0",".","=","SCI"};
Calculator(){
calculator = new JFrame("计算器");//整体框架
ButtonArea = new JPanel();//按扭区域
TextArea = new JPanel();//文字显示区域
button = new JButton[20];
textField=new JTextField("0");
for(int i=0;i<chars.length;i++){
button[i]=new JButton(chars[i]);
}
gridBagLayout=new GridBagLayout();
gridBagConstraints=new GridBagConstraints();
gridBagConstraints.fill=GridBagConstraints.BOTH;
gridBagConstraints.weightx=0.1;
gridBagConstraints.weighty=0.1;
}
void Run(){
calculator.setSize(400, 600);
calculator.setLayout(gridBagLayout);
//下面的用来对GridBayLayout进行布局管理
ButtonArea.setLayout(new GridLayout(5,4));
for(int i=0;i<chars.length;i++)
ButtonArea.add(button[i]);
TextArea.setLayout(gridBagLayout);
gridBagConstraints.gridx=0;
gridBagConstraints.gridy=0;
gridBagConstraints.gridwidth=1;
gridBagConstraints.gridheight=1;
gridBagLayout.setConstraints(textField,gridBagConstraints);
textField.setHorizontalAlignment(SwingConstants.RIGHT);
textField.setFont(new Font("微软雅黑",Font.BOLD,60));
TextArea.add(textField);
gridBagConstraints.gridx=0;
gridBagConstraints.gridy=0;
gridBagConstraints.gridwidth=1;
gridBagConstraints.gridheight=1;
gridBagLayout.setConstraints(TextArea,gridBagConstraints);
calculator.add(TextArea);
gridBagConstraints.gridx=0;
gridBagConstraints.gridy=1;
gridBagConstraints.gridwidth=1;
gridBagConstraints.gridheight=2;
gridBagLayout.setConstraints(ButtonArea,gridBagConstraints);
calculator.add(ButtonArea);
calculator.setVisible(true);
}
public static void main(String args[]) {
new Calculator().Run();
//Calculator
}
}