本文章没有详细讲解,只是介绍常用组件和常用方法。
一、概述Swing组件通常被称为“轻量级组件”。
常用组件如下:
| JFrame | 框架 |
| JDialog | 对话框 |
| JOptionPane | 对话框 |
| JButton | 按钮 |
| JCheckBox | 复选框 |
| JComboBox | 下拉框 |
| JLabel | 标签 |
| JRadioButton | 单选按钮 |
| JList | 显示一组条目的组件 |
| JTextField | 文本框 |
| JPasswordField | 密码框 |
| JTextArea | 文本区域 |
一个容器,各个组件的载体,创建一个窗口。
常用方法:
| setSize(int width,int height) | 设置窗口大小 |
| setLocation(int x,int y) | 设置窗口位置,默认0,0 |
| setBounds(int a,int b,int width,int height) | 设置初始位置a,b.窗口宽width,高height |
| setVisible(boolean b) | 设置窗口是否可见,默认不可见 |
| setResizable(boolean b) | 设置窗口是否可调整大小,默认可调节 |
| dispose() | 撤销当前窗口,并释放当前窗口所使用的资源 |
| setExtendedState(int state) | 设置窗口的扩展状态,state可选以下: MAXIMIZED_HORIZ(水平方向最大化) MAXIMIZED_VERT(垂直方向最大化) MAXIMIZED_BOTH(水平、垂直方向都最大化) |
| setDefaultCloseOperation(int operation) | 设定关闭方式,operation可选: JFrame.DO_NOTHING_ON_CLOSE(什么也不做) JFrame.HIDE_ON_CLOSE(隐藏当前窗口) JFrame.DISPOSE_ON_CLOSE(隐藏当前窗口,并释放窗体占用资源) JFrame.EXIT_ON_CLOSE(常用,结束窗口) |
从一个窗体弹出另一个窗体
与JFrame类似,但必须从属于JFrame。
JDidlog(Frame f) //指定父窗口
三、面板组件 1、JPanel最简单的面板,通常将面板组件添加到顶级窗口中,在面板组件也可以添加面板组件。
2、JScrollPane带滚动条的面板,需要将一个大的组件放到较小的空间的时候使用,只能添加一个组件,需要添加多个组件时,先都添加到JPanel,再添加到JScrollPanel中。
四、常用组件 1、JLabel(标签组件)显示文本货提示信息
构造方法:
| JLabel(String text) | 生成信息文字 |
| JLabel(Icon icon) | 设置图标 |
| JLabel(Icon icon,int aligment) | 设置图标+水平对齐方式 aligment 可选:SwingConstants.xxx |
| JLabel(String str,int aligment) | 设置文本+水平对齐方式 |
| JLabel(String str,Icon icon,int aligment) | 设置文本+图标+水平对齐方式 |
构造方法:
| JButton() | |
| JButton(String text) | 指定按钮文字 |
| JButton(Icon icon) | 指定图标 |
| JButton(String text,Icon icon) | 文字+图标 |
其他方法:
| setTooltipText(String text) | 设置提示文字 |
| setBorderPainted(boolean ) | 设置边界是否显示 |
| setEnabled(boolean) | 设置按钮是否可用 |
| setFocusPainted(boolean) | 设置选中效果 |
| setContentAreaFilled(boolean) | 设置按钮默认背景是否填充 |
单选按钮,需要将单选按钮加入到按钮组中(ButtonGroup)。
构造方法:
| JRadioButton() | |
| JRadioButton(Icon icon) | 指定图标 |
| JRadioButton(Icon icon,boolean selected) | 指定图标+是否选中 |
| JRadioButton(String text) | 指定文字 |
| JRadioButton(String text,Icon icon) | 指定文字+图标 |
| JRadioButton(String text,Icon icon,boolean selected) | 指定文字+图标+是否选中 |
构造方法:
| JCheckBox() | |
| JCheckBox(Icon icon,boolean checked) | 指定图标+是否被选中 |
| JCheckBox(String text,boolean checked) | 指定文字+是否被选中 |
构造方法:
| JComboBox() | |
| JComboBox(ComboBoxModel dataModel) | |
| JComboBox(Object[],arrayData) | |
| JComboBox(Vector vector) |
其他方法:
| removeAllItems() | 清除下拉列表 |
| addItem() | 添加下拉列表 |
| getItemCount() | 得到列表数量 |
| getSelectedItem() | 得到选择的列表 |
| getSelectedIndex() | 得到选择列表的索引 |
菜单条下添加菜单,菜单下添加菜单项
1、创建菜单条 JMenuBar
2、创建菜单 JMenu
3、创建菜单项 JMenuItem
7、JTextField(文本框)可用于输入框
构造方法:
| JTextField() | |
| JTextField(String text) | 指定默认文字 |
| JTextField(int fieldWidth) | 指定文本框长度 |
| JTextField(String text,int fieldWidth) | 文字+长度 |
| JTextField(Document docModel,String text,int fieldWidth) | 指定模式+文字+长度 |
构造方法与文本框相似
其他方法:
setEchoChar("*") //设置回显字符
9、JTextArea(文本域)构造方法:
| JTextArea() | |
| JTextArea(String text) | 指定默认文字 |
| JTextArea(int rows,int cols) | 指定长+宽 |
| JTextArea(Document doc) | 指定模型 |
| JTextArea(Document doc,String text,int rows,int cols) | 模型+文字+长宽 |
其他方法:
| setLineWrap() | 设置是否自动换行 |
| append(String text) | 不清空文本域内容,追加内容 |
| append("n") | 换行 |
| setText(String text) | 一次性设置文本域内容,会清空原内容 |
JOptionPane.showMessageDialog(null, "普通提示框!", "哈哈",JOptionPane.INFORMATION_MESSAGE);
JOptionPane.showMessageDialog(null, "警告提示框!", "哈哈",JOptionPane.WARNING_MESSAGE);
JOptionPane.showMessageDialog(null, "错误提示框!", "哈哈",JOptionPane.ERROR_MESSAGE);
2、输入对话框:showInputDialog()
Object[] objects = {"甲", "乙", "丙"};
String s = (String) JOptionPane.showInputDialog(null, "请选择你的身份n", "身份",
JOptionPane.PLAIN_MESSAGE, new ImageIcon("icon.png"), objects, "足球");
System.out.println(s);
String title = JOptionPane.showInputDialog(null, "请输入:n", "title", JOptionPane.PLAIN_MESSAGE);
System.out.println(title);
3、确认对话框:showConfirmDialog() 4、选择对话框:showOptionDialog()
JOptionPane.showConfirmDialog(null,"yes or no","标题",JOptionPane.YES_NO_OPTION);***



