实验总结
本周学习了除JFrame以外地其他容器,JPanel,JSplitPane,JTabbedPane,JScrollPane,JDesktopPane,JInternallFrame,事件处理,窗体事件处理,监听适配器,动作时间处理。
其他容器
JPanel
在JPanel中可以加入任意组件,然后直接将JPanel容器加入到JFrame容器中即可显示。
JSplitPane
JSplitPane主要功能是分隔面板,可以将一个窗体分隔成两个子窗体,可以是水平分隔也可以是垂直分隔。
JTabbedPane
JTabbedPane是在一个面板上设置多个选项卡供用户选择。
JScrollPane
JScrollPane的主要功能就是为显示的内容加入滚动条。
JDesktopPane和JInternalFrame
在Swing中也可以完成内部窗体的显示,即在一个窗体可以出现多个子窗体,每一个子窗体都无法超出父窗体的区域。JDesktopPane规定了一个父窗体的基本形式,JInternalFrame规定了各个子窗体,JInternelFrame需要加入到JDesktopPane中。
事件处理
事件就是表示一个对象发生的状态变化。每当按下一个按钮时,按钮的状态就发生了变化,此时就是产生一个事件,要处理这个事件就需要不停的监听事件的变化,并根据这些事件进行相应的处理。
可以通过getSource()取得发生此事件的源对象。事件接受对象被称为事件监听器。所有的事件监听器都是以监听接口的形式出现,处理时只需要实现此接口即可。
窗体事件
WindowListener是专门处理窗体事件的监听器,一个窗体的所有变化都可以使用这个接口进行监听。
监听适配器
如果一个接口有很多抽象方法,那么实现这个接口就需要实现他的全部方法,而有时候不需要其全部抽象方法,那么就可以在中间用一个抽象类实现接口,然后再继承抽象类即可,Java中提供了很多适配器,窗口适配器有WindowAdapter
动作事件及监听处理
如果想要一个按钮变得有意义,就需要动作事件处理,可以使用ActionListener接口处理按钮的动作事件
可以使用getSouce()取得事件源,然后用instanceof判断是否是你需要的事件源,从而进行精确的处理。