/*
* 程序头部注释开始
* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生
* All rights reserved.
* 文件名称:面板练习
* 作 者:薛广晨
* 完成日期:2012 年 11 月 14 日
* 版 本号:x1.0
* 对任务及求解方法的描述部分
* 输入描述:
* 问题描述:编写一个应用程序,要求编写一个Panel的子类MyPanel,MyPanel中有一个文本框和一个按钮,
* 要求MyPanel的实例作为其按钮的ActionEvent事件的监视器,当单击鼠标时,程序获取文本框中的文本,
* 并将该文本作为按钮的名称。再编写一个JFrame的子类,即窗口。窗口的布局为BorderLayout。
* 窗口中添加两个MyPanel面板,分别添加到窗口的东面和西面。用一个程序执行入口进行测试
* 程序输出:
* 程序头部的注释结束
*/
//MyPanel 类
package xue;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class MyPanel extends Panel implements ActionListener{
JButton button;
TextField tf;
MyPanel()
{
button = new JButton(" ");
button.setSize(10, 30);
tf = new TextField(20);
add(tf);
add(button);
button.addActionListener(this);
}
public void actionPerformed(ActionEvent e) {
button.setText(tf.getText());
}
}
//MyJFrame 类
import java.awt.*;
import javax.swing.*;
public class MyJFrame extends JFrame {
MyPanel mp1;
MyPanel mp2;
MyJFrame()
{
mp1 = new MyPanel();
mp2 = new MyPanel();
setLayout(new BorderLayout());
add(mp1,BorderLayout.EAST);
add(mp2,BorderLayout.WEST);
setBounds(150,600,600,150);
setVisible(true);
validate();
}
}
运行结果: