`
bingzhen66
  • 浏览: 36773 次
文章分类
社区版块
存档分类
最新评论

55.黑马程序员-GUI

 
阅读更多


------- android培训java培训、期待与您交流! ----------

一、概述
  • GUI
    • Graphical User Interface(图形用户接口)。
    • 用图形来显示操作界面。
    • 包:Javax.Swing,Java.Awt。
    • Java.Awt(Abstract Window ToolKit 抽象窗口工具包)
      • 专门制作图形化界面的包,需要调用本地系统方法(依赖于平台,不同平台略有差别),重量级控件。
    • Javax.Swing()
      • 在AWT基础上建立的一套图形界面系统,提供更多组件完全由Java实现,并且任何平台显示效果一致。增强移植性,轻量级控件
  • CLI
    • Command Line User Interface(命令行用户接口)
    • 常见的Dos命令行操作。繁琐不直观。
二、Component (组件)
  • 左面Container是容器,是一个特殊的组件,可以add添加其他组件。因为它的内部定义了一个集合。
三、布局管理器
四、Frame创建图形化界面
  • (1)创建Frame窗体
  • (2)对窗体进行基本设置,比如大小,位置,布局。
  • (3)定义组件,如按钮。
  • (4)add添加组件到窗体上。
  • (5)调用setVisible(true)显示窗体。
五、事件监听机制
  • 机制组成:
    • 事件源(组件)
    • 事件(Event)
    • 监听器(Listener):将可以触发某一个事件的动作都封装到监听器中。
    • 事件处理(引发事件后处理方式)
  • 窗体事件监听用WindowAdapter适配器,这个类是抽象类但是已经实现了空方法,需要哪个方法重写哪个。
  • 按钮组件没有适配器
  • 事件监听器有三个方法以上的,都有适配器 Adapter。
  • Code:
  • import java.awt.*;
    import java.awt.event.*;
    class  FrameDemo
    {
    	//定义该图形所需的组件的引用
    	private Frame f;
    	private Button but;
    
    	FrameDemo()
    	{
    		init();
    	}
    
    	public void init() //初始化设置
    	{
    		f=new Frame("我的Frame");
    		//对Frame进行基本设置
    		f.setBounds(300,100,600,500);
    		f.setLayout(new FlowLayout());
    
    		but=new Button("my button");
    		//将组件添加到frame中
    		f.add(but);
    
    		//加载一下窗体上事件
    		myEvent();
    
    		//显示窗体
    		f.setVisible(true);
    	}
    
    	private void myEvent() //事件与图形化界面分离
    	{
    		f.addWindowListener(new WindowAdapter()
    		{
    			public void windowClosing(WindowEvent e) 
    			{
    				System.exit(0);
    			}
    			
    		});//加一个监听器
    
    		but.addActionListener(new ActionListener()
    		{
    			public void actionPerformed(ActionEvent e)
    			{
    				System.out.println("退出,按钮干的。");
    				System.exit(0);
    			}
    		}) ;
    	}
    
    	public static void main(String[] args) 
    	{
    		new FrameDemo();
    	}
    }
    


分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics