java gui笔记
import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.*; public class Main{ JButton setButtons(String name) { JButton tButton = new JButton(); tButton.setFont(new Font("consolas", Font.PLAIN, 20)); tButton.setBackground(Color.white); tButton.setText(name); return tButton; } void createFrame(String title) { JFrame jf = new JFrame(title); //创建Frame // jf.setLayout(new GridLayout(4,4,2,2)); Container container = jf.getContentPane(); //获得容器 // JLabel jl = new JLabel("this is a pane"); JTextField jt = new JTextField("0"); //创建文本框,设置框内默认值 jt.setEditable(false); //设置不可编辑 jt.setHorizontalAlignment(JTextField.RIGHT); //设置文本框的对齐方式 jt.setPreferredSize(new Dimension (300,80)); //设置文本框的高度和宽度 jt.setFont(new Font("consolas", Font.PLAIN, 18)); //设置文本框的字体信息 container.add(jt, BorderLayout.NORTH); //将文本框加入到容器的北部 JPanel buttonPannel = new JPanel(); buttonPannel.setLayout(new GridLayout(4,4,2,2)); //Grid 布局方式。 for(int i = 1; i < 4; i++) { JButton jb = setButtons(""+i); buttonPannel.add(jb); jb.addActionListener(new ActionListener() { String s = jb.getText(); @Override public void actionPerformed(ActionEvent e) { jt.setText(jt.getText()+s); } }); } buttonPannel.add(setButtons("+")); for(int i = 4; i < 7; i++) { JButton jb = setButtons(""+i); buttonPannel.add(jb); jb.addActionListener(new ActionListener() { String s = jb.getText(); @Override public void actionPerformed(ActionEvent e) { jt.setText(jt.getText()+s); } }); } buttonPannel.add(setButtons("-")); for(int i = 7; i < 10; i++) { JButton jb = setButtons(""+i); buttonPannel.add(jb); jb.addActionListener(new ActionListener() { String s = jb.getText(); @Override public void actionPerformed(ActionEvent e) { jt.setText(jt.getText()+s); } }); } buttonPannel.add(setButtons("*")); JButton CE = setButtons("CE"); CE.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { jt.setText("0"); } }); buttonPannel.add(CE); JButton zero = setButtons("0"); zero.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { jt.setText(jt.getText()+"0"); } }); buttonPannel.add(zero); buttonPannel.add(setButtons("=")); buttonPannel.add(setButtons("/")); container.add(buttonPannel); // jl.setHorizontalAlignment(SwingConstants.CENTER); // container.add(jl); container.setBackground(Color.white); jf.setVisible(true); jf.setSize(600,400); jf.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); } public static void main(String[] args) { new Main().createFrame("not the first"); } }