
package com.briup.day14;
import java.awt.Color;
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JTextField;
public class FirstGUI {
private JFrame jFrame;//容器,相当于桌子
private Container contentPane;//容器,相当于桌布
//声明组件
private JTextField num1Text,num2Text,num3Text;
private JLabel addLbl,resultLbl;
private JButton addBtn,cleaBtn,exitBtn;
// 对容器初始化和设置操作
public FirstGUI() {
jFrame=new JFrame("计算器");
//设置容器大小
jFrame.setSize(500, 200);
//容器初始化位置
jFrame.setLocation(300,200);
//设置容器不能改变大小
jFrame.setResizable(false);
//点击容器退出按钮则退出程序
jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//设置容器颜色
//jFrame.setBackground(Color.GREEN);
//获取桌布
contentPane=jFrame.getContentPane();
Color color=new Color(200,100,199);
contentPane.setBackground(color);
//设置布局管理器,默认是BorderLayout
contentPane.setLayout(new FlowLayout());
initGUI();
}
//组件初始化和设置操作
public void initGUI() {
//第二步初始化组件
num1Text=new JTextField(10);
num2Text=new JTextField(10);
num3Text=new JTextField(10);
addLbl=new JLabel("+");
resultLbl=new JLabel("=");
addBtn=new JButton("计算");
cleaBtn=new JButton("清空");
exitBtn=new JButton("退出");
Font font=new Font("楷体",Font.BOLD,22);
addLbl.setFont(font);
resultLbl.setFont(font);
num1Text.setFont(font);
num2Text.setFont(font);
num3Text.setFont(font);
addBtn.setFont(font);
cleaBtn.setFont(font);
exitBtn.setFont(font);
//设置文本框不可编辑
num3Text.setEditable(false);
//设置文本框编辑方向
num1Text.setHorizontalAlignment(JTextField.RIGHT);
num2Text.setHorizontalAlignment(JTextField.RIGHT);
num3Text.setHorizontalAlignment(JTextField.RIGHT);
//第三步将组件添加到容器中
contentPane.add(num1Text);
contentPane.add(addLbl);
contentPane.add(num2Text);
contentPane.add(resultLbl);
contentPane.add(num3Text);
contentPane.add(addBtn);
contentPane.add(cleaBtn);
contentPane.add(exitBtn);
//第四步设置事件监听器
addBtn.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
//事件处理代码
String s1=num1Text.getText().trim();
String s2=num2Text.getText().trim();
if(s1.equals("")||s2.equals("")) {
//提示框
JOptionPane.showMessageDialog(null,"请输入非空数据");
return;
}
int i1= Integer.parseInt(s1);
int i2= Integer.parseInt(s2);
int num=i1+i2;
num3Text.setText(num+"");
}
});
cleaBtn.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
num1Text.setText("");
num2Text.setText("");
num3Text.setText("");
}
});
exitBtn.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
System.exit(0);
}
});
}
//让界面可见
public void go() {
jFrame.setVisible(true);
}
public static void main(String[] args) {
new FirstGUI().go();
}
}