窗口实训1
1、设计一个如图所示的界面,不需要提供组件的功能。
代码为:
package shiyan; import java.awt.BorderLayout; import java.awt.Color; import java.awt.Font; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.*; public class 窗口{ JFrame a; JPanel b; JButton c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,c14,c15,c16; JTextField d; GridLayout g1; public 窗口(){//构造方法 a=new JFrame("计算器"); b=new JPanel(); d=new JTextField(); g1=new GridLayout(4,4); d.setSize(2000,1800); b.add(d); a.add(d,BorderLayout.NORTH); b.setLayout(g1); a.setBounds(700, 400, 600, 500); a.add(b,BorderLayout.CENTER); c1=new JButton("7");c2=new JButton("8");c3=new JButton("9");c4=new JButton("/"); c5=new JButton("4");c6=new JButton("5");c7=new JButton("6");c8=new JButton("*"); c9=new JButton("1");c10=new JButton("2");c11=new JButton("3");c12=new JButton("-"); c13=new JButton("0");c14=new JButton(".");c15=new JButton("=");c16=new JButton("+"); a.add(b); b.add(c1);b.add(c2);b.add(c3);b.add(c4); b.add(c5);b.add(c6);b.add(c7);b.add(c8); b.add(c9);b.add(c10);b.add(c11);b.add(c12); b.add(c13);b.add(c14);b.add(c15);b.add(c16); a.setVisible(true); } public static void main(String[] args){ new 窗口(); } }
运行结果为:
2、编写可改变背景颜色的窗口。
代码:
import java.awt.BorderLayout; import java.awt.Color; import java.awt.Font; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.*; public class CH implements ActionListener{ JFrame a; JPanel b1,b2; JButton c1,c2,c3; public CH(){ a=new JFrame("界面"); b1=new JPanel();b2=new JPanel(); c1=new JButton("红色"); c2=new JButton("绿色"); c3=new JButton("蓝色"); a.setBounds(700, 400, 300, 200); a.add(b1,BorderLayout.NORTH); a.add(b2); b1.add(c1); b1.add(c2); b1.add(c3); c1.addActionListener(this); c1.setActionCommand("red"); c2.addActionListener(this); c2.setActionCommand("green"); c3.addActionListener(this); c3.setActionCommand("blue"); a.setVisible(true); } public void actionPerformed(ActionEvent e) { if(e.getActionCommand().equals("red")){ b2.setBackground(Color.red); }else if(e.getActionCommand().equals("green")){ b2.setBackground(Color.green); }else if(e.getActionCommand().equals("blue")){ b2.setBackground(Color.blue); } } public static void main(String[] args){ new CH(); } }
运行结果为:
3、对本次作业进行总结,在编程过程中遇到哪些问题,如何解决,有哪些收获?
此次作业让我对于事件处理的方法有了更深的理解,解决问题的方法也并不唯一,唯一就是需要自己多做练习。