• 201671010145 2016-2017《Java程序设计》Java图形界面——Swing包中的常用类


    Java可以使用类库中一组被称为Swing的包来构建图形用户界面,本篇整理了Swing包种常用的组件类。

    要使用Swing包,可以再代码中导入整个包:

    import javax.swing.*;

    要创建Swing应用程序,主方法所在的类要继承JFrame类,JFrame类中包含了用户界面上的标题栏,最小化最大化和关闭按钮等基本元素。主方法所在类要在构造函数中调用父类的构造函数,指定标题,高宽(或者使用pack()方法自适应),决定用户关闭窗口时应用程序如何响应,显示框架内容。

    常用的方法包括setSize,setTitle,setVisible,setBounds,setDefaultCloseOperation等等。

    可以使用下面的代码来指定Java7中新增的Nimbus外观效果:

    UIManager.setLookAndFeel(

    “com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel”

    );

    调用时使用try-catch来防止在不支持Nimbus的环境中出现异常。

    下面列出了一些常用的组件及常用方法和构造函数,要将组件加入到界面中,必须将他们加入到容器中(使用add(Component)方法),然后显示容器。

    JComponent:Swing中组件的超类

    常用方法:setEnable(),isEnabled(),setVisible(),isVisible(),setSize(),getSize()

    JPanel:面板,容器类。

    构造函数:JPanel()

    常用方法:add(Component)

    JButton:按钮类,用于定义具有文本和图标的按钮

    构造函数:JButton(String),JButton(Icon),JButton(String,Icon)

    ImageIcon:图标,用于按钮、标签等其他界面元素

    构造函数:ImageIcon(String)

    JLabel:标签,用来包含说明性文本和图标

    构造函数:JLabel(String),JLabel(String,int),JLabel(String, Icon, int)

    注:int参数由SwingConstants中定义的静态变量LEFT、RIGHT、CENTER来指定其对齐方式。

    常用方法:setText(String),setIcon(Icon),getText(),getIcon()

    JTextComponent:JTextField和JTextArea的超类

    常用方法:setEditable(boolean),isEditable(),setText(String),getText(),getSelectedText(),setFont(Font)

    JTextField:单行文本框,用来处理用户输入

    构造函数:JTextField(),JTextField(int),JTextField(String,int)

    注:int参数指定文本框宽度,String指定默认字符串。

    JPasswordField:密码框,JTextField的子类

    常用方法:setEchoChar(char)

    JTextArea:多行文本框

    构造函数:JTextArea(int,int),JTextArea(String, int, int)

    注:两个int分别指定行数和列数,String指定默认字符串。

    常用方法:append(String),insert(String,int),setLineWrap(boolean),setWrapStyleWord(boolean)

    注:setWrapStyleWord指定是整个单词换到下一行还是拆开单词将字符换到下一行。

    JScrollPane:可滚动区域,用来定义带有滚动条的区域

    构造函数:JScrollPane(Component),JScrollPane(Component,int, int)

    注:Component参数为需要添加滚动条的组件,两个int参数分别定义垂直和水平方向的滚动条显示方式,显示方式由ScrollPaneConstants的静态变量VERTICAL_SCROLLBAR_ALWAYS,VERTICAL_SCROLLBAR_AS_NEEDED和VERTICAL_SCROLLBAR_NEVER定义(水平滚动条换成HORIZONTAL即可。

    常用方法:setPreferredSize(Dimension)

    JToggleButton:JCheckBox和JRadioButton的超类

    常用方法:setSelected(boolean),isSelected()

    JCheckBox:复选框

    构造函数:JCheckBox(String),JCheckBox(String,boolean),JCheckBox(Icon),JCheckBox(Icon, boolean)

    注:第二个参数用来指定初始情况下按钮是否被选中。

    JRadioButton:单选框

    构造函数:JRadioButton(String),JRadioButton(String,boolean),JRadioButton(Icon),JRadioButton(Icon, boolean)

    ButtonGroup:按钮组,用来组合多个单选按钮

    构造函数:ButtonGroup()

    常用方法:add(Component)

    JComboBox:组合框,用来提供下拉菜单

    构造函数:JComboBox(),JComboBox(Object[])

    注:如果列表项为文本,则Object[]参数可以提供一个String数组。

    常用方法:getItemAt(int),getItemCount(),getSelectedIndex(),getSelectedItem(),setSelectedIndex(int),setSelectedIndex(Object)

    JList:列表,允许用户选择一个或多个值,与下拉列表不同,列表会显示所有值

    构造函数:JList(),JList(Object[]),JList(Vector)

    常用方法:setListData(Object[]),setListData(Vector),setVisibleRowCount(int),getSelectedValuesList()

    JOptionPane:用来创建标准对话框

    · 创建确认对话框:showConfirmDialog(Component, Object)

    注:Conponent参数指出了包含对话框的容器,如果为null或者不是JFrame对象,则显示在屏幕中央。第二个参数可以使字符串,组件或者Icon,定义了对话框中的主要内容。

    重载方法:showConfirmDialog(Component,Object, String, int, int)

    注:String定义了标题栏中的字符串,后面的int参数为JOptionPane类中定义的常量YES_NO_CANCEL_OPTION或者YES_NO_OPTION,用来指出显示哪些按钮,最后一个参数为ERROR_MESSAGE、INFORMATION_MESSAGE、PLAIN_MESSAGE、QUESTION_MESSAGE或者WARNING_MESSAGE,决定了消息类型。

    · 创建输入对话框:showInputDialog(Component, Object)

    注:方法参数和前面的showConfirmDialog方法相同。

    方法重载:showInputDialog(Conponent,Object, String, int)

    注:String参数为标题栏上的文本,最后的int值为消息类型(见上文)。

    · 创建消息对话框:showMessageDialog(Component, Object)

    重载方法:showMessageDialog(Component,Object, String, int)

    注:方法参数和前面相同。

    · 创建选项对话框:showOptionDialog(Component, Object, String, int,int, Icon, Object[], Object)

    注:前两个参数与前面相同,第三个String参数为标题文本,第四个int参数为YES_NO_CANCEL_OPTION或者YES_NO_OPTION(如果要使用其他选项,则这个参数传入0),第五个int参数为消息类型(如果要使用其他选项,则这个参数传入0),第六个Icon参数用来指定第五个参数的默认图标,Object[]参数用来指定对话框的选项组件和其他对象(当第四个参数不为YES_NO_CANCEL_OPTION或者YES_NO_OPTION时),最后一个参数用来指定第四个参数不为YES_NO_CANCEL_OPTION或者YES_NO_OPTION时对话框的默认选项。

    JSlider:滑块,用来通过滑动设置输入值

    构造函数:JSlider(int),JSlider(int,int),JSlider(int, int, int),JSlider(int, int, int, int)

    注:第一个构造函数int参数用来指定滑块方向,使用SwingConstants中定义的HORIZONTAL或VERTICAL常量来指定,滑块的最小值、最大值以及初始值默认分别为0、100、50。第二个构造函数的两个int参数指定滑块的最小值和最大值,方向默认为水平。第三个构造函数指定滑块的最小值,最大值以及初始值。第四个构造函数指定滑块的方向、最小值、最大值以及初始值。

    常用方法:setMajorTickSpacing(int),setMinorTickSpacing(int),setPaintTicks(boolean),setPaintLabels(boolean)

    JToolBar:工具栏容器,用来将多个组件组织为一行或一列

    构造函数:JToolBar(),JToolBar(int)

    注:int参数为HORIZONTAL或VERTICAL,用来指定工具栏方向(默认是水平方向)。

    JProgressBar:进度条,用于显示进度

    构造函数:JProgressBar(),JProgressBar(int,int),JProgressBar(int, int, int)

    注:第二个构造函数指定进度条的最小值和最大值,第三个指定方向(HORIZONTAL或VERTICAL)和最小值最大值。

    常用方法:setMinimum(int),setMaximum(int),setValue(int)

    JMenuBar:用于包含菜单栏的容器

    构造函数:JMenuBar()

    常用方法:add(JMenu)

    JMenu:菜单栏的一个下拉菜单

    构造函数:JMenu(String)

    常用方法:add(JMenuItem),add(Component),addSeparator(),add(String)

    JMenuItem:下拉菜单中的一个项

    构造函数:JMenuItem(String),JMenuItem(Icon),JMenuItem(String,Icon)

    JTabbedPane:选项卡,用来定义堆叠在一起的一组面板

    构造函数:JTabbedPane(),JTabbedPane(int),JTabbedPane(int,int)

    注:第二个构造函数的int参数用来指定布局,可以使用JTabbedPane中顶一个TOP、BOTTOM、LEFT或RIGHT常量来指定标签的显示位置。第三个构造函数第一个为布局参数,第二个滚动策略(即当界面无法容纳全部标签时的策略),可以使用WRAP_TAB_LAYOUT来设置不滚动的选项卡窗格来显示多余的标签,或者使用SCROLL_TAB_LAYOUT来设置使用滚动箭头。

    常用方法:addTab(String,Component)

  • 相关阅读:
    关于数据库的索引知识
    RESTful API设计相关
    Coroutine(协程)模式与线程
    Python网络编程中的服务器架构(负载均衡、单线程、多线程和同步、异步等)
    读懂diff
    Linux学习笔记——如何使用echo指令向文件写入内容
    ubuntu中执行定时任务crontab
    网络编程之异步IO,rabbitMQ笔记
    走进docker的世界之入门篇
    xml基础
  • 原文地址:https://www.cnblogs.com/1996zq/p/7923112.html
Copyright © 2020-2023  润新知