资源预览内容
第1页 / 共13页
第2页 / 共13页
第3页 / 共13页
第4页 / 共13页
第5页 / 共13页
第6页 / 共13页
第7页 / 共13页
第8页 / 共13页
第9页 / 共13页
第10页 / 共13页
亲,该文档总共13页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第十三章 Swing图形用户界面主要内容:lSwing与AWT的区别lSwing组件与容器Swing与AWT的区别 AWT是重量级组件,而Swing是轻量级组件 。 Swing采用了MVC(Model-View-Controller)的设计模式 。 新的组件、管理器、监听接口、事件的引入 。 组件功能上进行了提高:支持键盘操作、设置边框等功能 。 Swing组件与容器JComponent组件及其子类JComponent的继承关系。继承JComponent的组件界面功用划分。实现人机交互的基本组件,如Jbutton、JcomboBox、Jlist、Jmenu、 Jslider、JTextField等。 不可编辑信息的组件,如JLabel、 JProgressBar、 JToolTip等。与AWT所不同的JComponent功能 。边框设置、双缓冲区、提示信息、键盘导航、可插入LookAndFeel(L frame.setContentPane(contentPane); Swing事件处理Swing组件、事件及监听接口之间的对应关系1组件可激发的事件(Event)事件监听接口 AbstractButton(JButton, JToggleButton, JCheckBox,JRadioButton)ActionEvent ChangeEvent ItemEventActionListener ChangeListener ItemListener JFileChooserActionEventActionListenerJTextField JPasswordFieldActionEvent CaretEvent DocumentEvent UndoableEventActionListener CaretListener DocumentListener UndoableListenerJTextAreaCaretEvent DocumentEvent UndoableEventCaretListener DocumentListener UndoableListenerJTextPane JEditorPaneCaretEvent DocumentEvent UndoableEvent HyperlinkEventCaretListener DocumentListener UndoableListener HyperlinkListenerJComboBoxActionEvent ItemEventActionListener ItemListener组件可激发的事件(Event)事件监听接口JMenuItemActionEvent ChangeEvent ItemEvent MenuKeyEvent MenuDragMouseEventActionListener ChangeListener ItemListener MenuKeyListener MenuDragMouseListener JMenuMenuEventMenuListenerJPopupMenuPopupMenuEventPopupMenuListenerJProgressBarChangeEventChangeListener JSliderChangeEventChangeListener JScrollBarAdjustmentEventAdjustmentListenerJTableListSelectionEvent TableModeEvent TableColumnModelEvent CellEditorEventListSelectionListener TableModeListener TableColumnModelListener CellEditorListener JTabbedPaneChangeEventChangeListenerJTreeTreeSelectionEvent TreeExpansionEvent TreeWillExpandEvent TreeModeEventTreeselectionListener TreeExpansionListener TreeWillExpandListener TreeModeListener JTimerActionEventActionListenerSwing组件、事件及监听接口之间的对应关系2Swing事件处理Swing提供的各监听接口成员方法1事件监听接口成员方法CaretListenercaretUpdate(CaretEvent e)CellEditorListenereditingCanceled(ChangeEvente) editingStopped(ChangeEvent e) ChangeListenerstateChanged(ChangeEvent e)DocumentListenerchangedUpdate(DocumentEvent e) insertUpdate(DocumentEvent e) removeUpdate(DocumentEvent e) HyperlinkListenerhyperlinkUpdate(HyperlinkEvent e)ListDataListenercontentsChanged(ListDataEvente) intervalAdded(ListDataEvent e) intervalRemoved(ListDataEvent e) ListSelectionListenervalueChanged(ListSelectionEvent e)事件监听接口成员方法MenuDragMouseListenermenuDragMouseDragged(MenuDragMouseEvente) menuDragMouseEntered(MenuDragMouseEvent e) menuDragMouseExited(MenuDragMouseEvent e) menuDragMouseReleased(MenuDragMouseEvent e)MenuKeyListenermenuKeyPressed(MenuKeyEvent e) menuKeyReleased(MenuKeyEvent e) menuKeyTyped(MenuKeyEvent e)MenuListenermenuCanceled(MenuEvent e) menuDeselected(MenuEvent e) menuSelected(MenuEvent e)PopupMenuListenerpopupMenuCanceled(PopupMenuEvent e) popupMenuWillBecomelavisible(PopupMenuEvent e) popupMenuWillB ecomeVisible(PopupMenuEvent e)TableColumnModelListenercolumnAdded(TableColumnModelEvent e) columnMarginChanged(ChangeEvent e) columnMoved(TableColumnModelEvent e) columnRemoved(TableColumnModelEvent e) columnSelectionChanged(ListSelectionEvent e)TableModelListenertableChanged(TableModelEvent e)Swing提供的各监听接口成员方法2编写简单的Swing程序【例13.2】程序说明 1)JScrollPane和JTable之间的关系如图13.7,JScrollPane相当于提供了 一个浏览的透明窗口,这个窗口处于BorderLayout布局管理器的中央, 而JTable相当于浏览的内容。2)程序当中如果去掉了frame.pack()的注释, 则this.setSize方法失效,原因是pack语句 要求窗口适应组件尺寸的要求 编写简单的Swing程序【例13.1】【例13.1】、【例13.2】。Swing程序设计一般可按照下列流程进行:引入Swing包;选择外观和感觉; 设置顶层容器;设置Swing组件(产生组件、得到内容面板并向其中添加 Swing组件,进行Swing组件的装饰,如周围添加边界等);进行事件处理。 Windows风格 Motif风格 Metal风格
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号