黑马程序员-JavaGUI图形化视图

来源:互联网 发布:好听的淘宝会员名 编辑:程序博客网 时间:2024/06/01 09:14

 


---------------------- <ahref="http://www.itheima.com"target="blank">ASP.Net+Unity开发</a>、<ahref="http://www.itheima.com"target="blank">.Net培训</a>、期待与您交流! ----------------------

创建图形化界面步骤:

1,创建frame窗体。

2,对窗体进行基本设置。

       比如大小,位置,布局。

3,定义组件。

4,将组件通过窗体的add方法添加到窗体中。

5,让窗体显示,通过setVisible(true)

 

     Frame f = new Frame("my awt");

              f.setSize(500,400);

              f.setLocation(300,200);

              f.setLayout(newFlowLayout());

              Buttonb = new Button("我是一个按钮");

              f.add(b);

              f.addWindowListener(newWindowAdapter()

              {

                     publicvoid windowClosing(WindowEvent e)

                     {

                            System.out.println("我关");

                            System.exit(0);

                     }

                     publicvoid windowActivated(WindowEvent e)

                     {

                            System.out.println("我活了。");

 

                     }

                    

                     publicvoid windowOpened(WindowEvent e)

                     {

                            System.out.println("我被打开了,hahahhahah");

                     }

 

              });

              f.setVisible(true);

 

事件监听机制的特点:

1,事件源。

2,事件。

3,监听器。

4,事件处理。

 

事件源:就是awt包或者swing包中的那些图形界面组件。

      

事件:每一个事件源都有自己特有的对应事件和共性事件。

 

监听器:将可以触发某一个事件的动作(不只一个动作)都已经封装到了监听器中。

 

以上三者,在java中都已经定义好了。

直接获取其对象来用就可以了。

 

我们要做的事情是,就是对产生的动作进行处理。private void myEvent()

       {

              f.addWindowListener(newWindowAdapter()

              {

                     publicvoid windowClosing(WindowEvent e)

                     {

                            System.exit(0);

                     }

              });

 

              //让按钮具备退出程序的功能

              /*

              按钮就是事件源。

              那么选择哪个监听器呢?

              通过关闭窗体示例了解到,想要知道哪个组件具备什么样的特有监听器。

              需要查看该组件对象的功能。

               通过查阅button的描述。发现按钮支持一个特有监听addActionListener。

 

              */

              but.addActionListener(newActionListener()

              {

                     privateint count = 1;

                     publicvoid actionPerformed(ActionEvent e)

                     {

                            //System.out.println("退出,按钮干的");

                            //System.exit(0);

                           

                            //f.add(newButton("Button-"+(count++)));

                            //f.setVisible(true);

                            //f.validate();

 

                            //System.out.println(e.getSource());

                            Buttonb = (Button)e.getSource();

                           

                            Framef1 = (Frame)b.getParent();

 

                            f1.add(newButton("button-"+count++));

                            f1.validate();

 

 

                     }

              });

       }

 

 

 

---------------------- <ahref="http://www.itheima.com"target="blank">ASP.Net+Unity开发</a>、<ahref="http://www.itheima.com"target="blank">.Net培训</a>、期待与您交流! ----------------------

详细请查看:<a href="http://www.itheima.com"target="blank">www.itheima.com</a>

 

 

 

 

 

 

0 0
原创粉丝点击