发布网友 发布时间:2024-12-20 13:38
共1个回答
热心网友 时间:2024-12-20 14:13
GUI(Graphical User Interface,图形用户界面)是计算机操作界面的直观形式,相较于命令行界面,图形界面更易于用户理解与操作。
Java图形界面主要由AWT(Abstract Windows ToolKit,抽象窗口工具包)和Swing(AWT的扩展)两个核心库组成。AWT依赖于本地系统方法实现功能,属重量级控件,而Swing则完全由Java实现,增强了移植性,属轻量级组件。
容器是组件的子类,用于将组件组织为整体结构。容器包括窗口(JFrame)、弹窗(JDialog)、面板(JPanel)、滚动面板(JScrollPanel)等四种类型。窗口(JFrame)为具有标题栏的框架,可存在。弹窗(JDialog)则为自定义或标准对话框,JOptionPane提供快速创建对话框的静态方法。
面板作为容器的一种,不能存在,只能置于窗口中。面板用于容纳其他组件,实现特定布局。滚动面板(JScrollPane)支持水平和垂直滚动视图,文本区域、表格等组件可使用其包裹以实现滚动显示。分隔面板(JSplitPane)将两个组件通过水平/垂直分隔条分别左右或上下显示,并可调整分隔区域大小。选项卡面板(JTabbedPane)允许用户通过点击标题在一组组件间切换显示。
布局管理器控制组件在容器中的排列方式。流式布局(FlowLayout)按水平方向依次排列组件。网格布局(GridLayout)以矩形网格形式布置组件,一个网格中放置一个组件,组件自动撑满网格。边界布局(BorderLayout)将容器分为5个区域,每个区域放置一个组件。
基本组件如标签(JLabel)、按钮列表(JComboBox)、列表框(JList)、文本框(JTextField)、密码框(JPasswordField)、文本区域(JTextArea)、进度条(JProgressBar)、滑块(JSlider)等,用于展示文本、图片、文本输入与选择、进度显示等。复杂组件包括文件选取器(JFileChooser)、颜色选取器(JColorChooser)、菜单栏(JMenuBar)、工具栏(JToolBar)等,为用户提供了更多功能。
事件监听包括鼠标监听、键盘监听、窗口监听等。鼠标监听事件用于响应鼠标操作,键盘监听事件用于监听按键输入,窗口监听事件则关注窗口的激活与关闭。