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、对本次作业进行总结,在编程过程中遇到哪些问题,如何解决,有哪些收获?
此次作业让我对于事件处理的方法有了更深的理解,解决问题的方法也并不唯一,唯一就是需要自己多做练习。