--java-- 十二周 【任务一】编写一个Panel的子类MyPanel,MyPanel中有一个文本框和一个按钮,要求MyPanel的实例作为其按钮的ActionEvent事件的监视器

来源:互联网 发布:动漫漫依淘宝 编辑:程序博客网 时间:2024/06/05 08:39

1.编写一个应用程序,要求编写一个Panel的子类MyPanel,MyPanel中有一个文本框和一个按钮,要求MyPanel的实例作为其按钮的ActionEvent事件的监视器,当单击鼠标时,程序获取文本框中的文本,并将该文本作为按钮的名称。再编写一个JFrame的子类,即窗口。窗口的布局为BorderLayout。窗口中添加两个MyPanel面板,分别添加到窗口的东面和西面。用一个程序执行入口进行测试。(必做)

 

 

package hu;import java.awt.event.*;import java.awt.*;public class MyPanel extends Panel implements ActionListener{Button button;TextField text;MyPanel(String s){button = new Button(s);text = new TextField(13);add(button);add(text);button.addActionListener(this);}@Overridepublic void actionPerformed(ActionEvent e) {// TODO Auto-generated method stubString s = text.getText();button.setLabel(s);}}


 

package hu;public class Text {/** * @param args */public static void main(String[] args) {// TODO Auto-generated method stub             WindowPanel w = new  WindowPanel(); }}


 

 

package hu;import java.awt.event.*;import java.awt.*;import javax.swing.JFrame;public class WindowPanel extends JFrame {MyPanel panel1,panel2;WindowPanel(){panel1=new MyPanel("东");panel2=new MyPanel("西");setLayout(new BorderLayout());add(panel1,BorderLayout.EAST);add(panel2,BorderLayout.WEST);setTitle("myframe");setBounds(100,100,400,120);setVisible(true);validate();   /* addWindowListener(new WindowAdapter()    {public void WindowClosing(WindowEvent e){System.exit(0);}});*/    validate();}}