学习java 7.22

学习内容:

      GridBagLayout

      GridBagLayout布局管理器的功能最强大,但也最复杂,与GridLayout布局管理器不同的是,在GridBagLayout布局管理器中,一个组件可以跨越一个或多个网格,并可以设置各网格的大小互不相同,从而增加了布局的灵活性。当窗口的大小发生变化时,GridBagLayout 布局管理器也可以准确地控制窗口各部分的拉伸。

      由于在GridBagLayout布局中,每个组件可以占用多个网格,此时,我们往容器中添加组件的时候,就需要具体的控制每个组件占用多少个网格,jaxa提供的GridBagConstaints类,与特定的组件绑定,可以完成具体大小和跨越性的设置。

      

      CardLayout

      CardLayout布局管理器以时间而非空间来管理它里面的组件,它将加入容器的所有组件看成一叠卡片(每个卡片其实就是一个组件),每次只有最上面的那个Component才可见。就好像一副扑克牌,它们叠在一起,每次只有最上面的一张扑克牌才可见.

      

 

      BoxLayout      

      为了简化开发,Swing引入了一个新的布局管理器:BoxLayout。BoxLayout 可以在垂直和水平两个方向上摆放GUI组件,BoxLayout 提供了如下一个简单的构造器:

      

 

      

 

 

      基本组件

      

      

      Dialog 是Wirdow类的子类,是一个容器类,属于特殊组件。对话框是可以独立存在的顶级窗口,因此用法与普通窗口的用法几乎完全一样,但是使用对话框需要注意下面两点:

      对话框通常依赖于其他窗口,就是通常需要有一个父窗口;

      对话框有非模式(non-modal)和模式(modal)两种,当某个模式对话框被打开后,该模式对话框总是位于它的父窗口之上,在模式对话框被关闭之前,父窗口无法获得焦点。

 

      

 

      Dialog类还有一个子类:FileDialog,它代表一个文件对话框,用于打开或者保存文件;需要注意的是FileDialog无法指定模态或者非模态,这是因为FileDialog依赖于运行平台的实现,如果运行平台的文件对话框是模态的,那么FileDialog也是模态的;否则就是非模态的。

      

 

      GUI事件处理机制

      当在某个组件上发生某些操作的时候,会自动的触发一段代码的执行。

      在GUI事件处理机制中涉及到4个重要的概念需要理解︰

        事件源(Event Source)∶操作发生的场所,通常指某个组件,例如按钮、窗口等;

        事件( Event ):在事件源上发生的操作可以叫做事件,GUI会把事件都封装到一个Event对象中,如果需要知道该事件的详细信息,就可以通过Event对象来获取。

        事件监听器(Event Listener):当在某个事件源上发生了某个事件,事件监听器就可以对这个事件进行处理。

        注册监听︰把某个事件监听器(A通过某个事件(B)绑定到某个事件源(C)上,当在事件源C上发生了事件B之后,那么事件监听器A的代码就会自动执行。  

      

      AWT把事件分为了两大类:

      1.低级事件︰这类事件是基于某个特定动作的事件。比如进入、点击、拖放等动作的鼠标事件,再比如得到焦点和失去焦点等焦点事件。

      

 

      ⒉.高级事件:这类事件并不会基于某个特定动作,而是根据功能含义定义的事件。

      

 

 

      事件监听器

      

 

明天内容:
      AWT

遇到问题:
      无

 

posted @ 2021-07-22 21:05  kuaiquxie  阅读(31)  评论(0编辑  收藏  举报