目录
一、JPanel面板
1、JPanel面板
2、JScrollPane(滚动面板)
二、按钮
1、JButton(按钮)
2、JRadioButton(单选按钮)
3、JCheckBox(复选框按钮)
三、列表
1、JCombobox(下拉框)
2、JList(列表框)
四、文本框组件
1、JTextField(文本框组件)
2、JPassWord(密码框)
3、JTextArea (文本域)
package SWING程序设计2; import java.awt.BorderLayout; import java.awt.Container; import java.awt.GridLayout; import javax.swing.BorderFactory; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; public class JPANEL extends JFrame { public JPANEL() { setBounds(100, 100, 500, 300); setDefaultCloseOperation(EXIT_ON_CLOSE); setVisible(true); Container c=getContentPane(); c.setLayout(new GridLayout(2,2)); JPanel p1=new JPanel(); p1.setLayout(new GridLayout(1,3,10,10)); JPanel p2=new JPanel(new BorderLayout()); JPanel p3=new JPanel(new GridLayout(1,2,10,10)); JPanel p4=new JPanel(new GridLayout(2,1,10,10)); p1.setBorder(BorderFactory.createTitledBorder("面板1"));//添加标题边框 p2.setBorder(BorderFactory.createTitledBorder("面板2"));//添加标题边框 p3.setBorder(BorderFactory.createTitledBorder("面板3"));//添加标题边框 p4.setBorder(BorderFactory.createTitledBorder("面板4"));//添加标题边框 p1.add(new JButton("p1")); p1.add(new JButton("p2")); p1.add(new JButton("p3")); p1.add(new JButton("p4")); p2.add(new JButton("p1"),BorderLayout.CENTER); p2.add(new JButton("p2"),BorderLayout.SOUTH); p2.add(new JButton("p3"),BorderLayout.WEST); p2.add(new JButton("p4"),BorderLayout.NORTH); p2.add(new JButton("p5"),BorderLayout.EAST); p3.add(new JButton("p3")); p3.add(new JButton("p3")); p4.add(new JButton("p4")); p4.add(new JButton("p4")); c.add(p1); c.add(p2); c.add(p3); c.add(p4); setVisible(true); } public static void main(String[] args) { new JPANEL(); // TODO 自动生成的方法存根 } }
package SWING程序设计2;
import java.awt.Container;
import javax.swing.*;
public class JSCROLLPANE extends JFrame{
public JSCROLLPANE() {
setBounds(100,100,500,300);//设置窗体大小
setDefaultCloseOperation(EXIT_ON_CLOSE);//设置窗体关闭规则
Container c=getContentPane();
JTextArea area=new JTextArea();//文本域
JScrollPane sp=new JScrollPane(area);//创建滚动面板,为文本添加滚动条
c.add(sp);
setVisible(true);
}
public static void main(String[] args) {
new JSCROLLPANE();
// TODO 自动生成的方法存根
}
}
package SWING程序设计2;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
import Swing程序设计.GildLayout;
public class JBUTTON1 extends JFrame{
public JBUTTON1() {
setBounds(100,100,500,300);
setDefaultCloseOperation(EXIT_ON_CLOSE);
Container c=getContentPane();
c.setLayout(new GridLayout(3,2,5,5));
JButton btn[]=new JButton[6];
for(int i=0;i
package SWING程序设计2;
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JRadioButton;
public class JRADIOBUTTON extends JFrame{
public JRADIOBUTTON() {
setBounds(100,100,100,110);//设置窗体坐标大小
setDefaultCloseOperation(EXIT_ON_CLOSE);
Container c=getContentPane();
c.setLayout(new FlowLayout());
JRadioButton left=new JRadioButton("向左走");
JRadioButton right=new JRadioButton("向右走");
c.add(left);
c.add(right);
ButtonGroup group=new ButtonGroup();
group.add(left);//把单选按钮放到项目组中
group.add(right);
left.setSelected(true);;//默认选中
JButton btn=new JButton("打印");
btn.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
System.out.println(left.getText()+"按键选中状态"+left.isSelected());
System.out.println(right.getText()+"按键选中状态"+right.isSelected());
// TODO 自动生成的方法存根
}
});
c.add(btn);
setVisible(true);
}
public static void main(String[] args) {
new JRADIOBUTTON();
// TODO 自动生成的方法存根
}
}
package SWING程序设计2;
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
public class JCHECKBOX extends JFrame{
public JCHECKBOX() {
setBounds(100, 100, 190, 120);
setDefaultCloseOperation(EXIT_ON_CLOSE);
Container c=getContentPane();
c.setLayout(new FlowLayout());
JCheckBox c1=new JCheckBox("1");
JCheckBox c2=new JCheckBox("2");
JCheckBox c3=new JCheckBox("3");
c.add(c1);
c.add(c2);
c.add(c3);
c1.setSelected(true);//默认选中
JButton btn=new JButton("打印");
btn.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
System.out.println(c1.getText()+"复选框选中状态:"+c1.isSelected());//获取复选框状态
System.out.println(c2.getText()+"复选框选中状态:"+c2.isSelected());//获取复选框状态
System.out.println(c3.getText()+"复选框选中状态:"+c3.isSelected());//获取复选框状态
// TODO 自动生成的方法存根
}
});
c.add(btn);
setVisible(true);
}
public static void main(String[] args) {
new JCHECKBOX();
// TODO 自动生成的方法存根
}
}
package SWING程序设计2;
import java.awt.Container;
import java.awt.FlowLayout;
import javax.swing.*;
public class JCOMBOBOX extends JFrame{
public JCOMBOBOX() {
setBounds(100, 100, 190, 120);
setDefaultCloseOperation(EXIT_ON_CLOSE);
Container c=getContentPane();
c.setLayout(new FlowLayout());
// JComboBox combobox=new JComboBox();
// combobox.addItem("身份证");//向下拉列表添加数据
// combobox.addItem("学生证");//
// combobox.addItem("工作证");//
// String a[]= {"数组元素1","数组元素2","数组元素3"};
// JComboBox combobox=new JComboBox(a);//使用String添加下拉列表元素
// combobox.addItem("工作证");
// JComboBox combobox=new JComboBox();
// String items[]= {"数组元素1","数组元素2","数组元素3"};
// ComboBoxModel cm=new DefaultComboBoxModel<>(items);//创建下拉列表模型
// combobox.setModel(cm);//向列表中添加数据模型
JComboBox combobox=new JComboBox();
String items[]= {"数组元素1","数组元素2","数组元素3"};
ComboBoxModel cm=new DefaultComboBoxModel<>(items);
combobox.setModel(cm);
combobox.setBounds(10, 10, 80, 21);//设置坐标和大小
c.add(combobox);
setVisible(true);
}
public static void main(String[] args) {
new JCOMBOBOX();
// TODO 自动生成的方法存根
}
}
package SWING程序设计2;
import java.awt.Container;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
public class JLIST extends JFrame{
public JLIST() {
setBounds(100, 100, 217, 167);
setDefaultCloseOperation(EXIT_ON_CLOSE);
Container c=getContentPane();
c.setLayout(null);
String items[]= {"数组元素1","数组元素2","数组元素3","数组元素4","数组元素5","数组元素6","数组元素7","数组元素8"};
// JList jl=new JList<>(items);
// jl.setBounds(10, 10, 100, 100);//设定坐标和大小
JList jl=new JList();
DefaultListModel model=new DefaultListModel();//列表框的数据模型
for(String tmp:items) {
model.addElement(tmp);//向数据模型添加元素
}
model.addElement("添加元素");//添加元素
jl.setModel(model);//列表框载入数据模型
// jl.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);//单选
// jl.setSelectionMode(ListSelectionModel.SINGLE_INTERVAL_SELECTION);//连续相邻
jl.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);//随便选
//按住ctrl
JButton btn=new JButton("确认");
btn.setBounds(120,90,70,25);
btn.addActionListener(new ActionListener() {
//获取列表框选中的所有元素
@Override
public void actionPerformed(ActionEvent e) {
java.util.Listvalues= jl.getSelectedValuesList();
for(String temp:values) {
System.out.println(temp);
}
System.out.println("----------end----------");
// TODO 自动生成的方法存根
}
});
c.add(btn);
JScrollPane js=new JScrollPane(jl);//为列表添加滚动条
js.setBounds(10, 10, 100, 100);//设定坐标和大小(如果添加滚动条,设置滚动条的的坐标大小即可)
c.add(js);
setVisible(true);
}
public static void main(String[] args) {
new JLIST();
// TODO 自动生成的方法存根
}
}
package SWING程序设计2;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
public class JTEXTFIELD extends JFrame{
public JTEXTFIELD() {
setBounds(100,100,250,100);
setDefaultCloseOperation(EXIT_ON_CLOSE);
Container c=getContentPane();
c.setLayout(new FlowLayout());
JTextField jt=new JTextField(/*20*/);//20长度文本框//设置文本
jt.setColumns(20);//设置文本框长度
jt.setText("aaa");//设置文本
jt.setFont(new Font("黑体",Font.PLAIN,20));//设置字体格式
c.add(jt);
JButton btn=new JButton("确认");
btn.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
System.out.println("文本框的内容为:"+jt.getText());//获取文本框的文本值
jt.setText("");//清空文本框内容
jt.requestFocus();//获取焦点,获取光标
}
});
c.add(btn);
setVisible(true);
}
public static void main(String[] args) {
new JTEXTFIELD();
// TODO 自动生成的方法存根
}
}
package SWING程序设计2;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.lang.reflect.Array;
import javax.swing.*;
public class JPASSWORDFIELD extends JFrame{
public JPASSWORDFIELD() {
setBounds(100,100,400,100);
setDefaultCloseOperation(EXIT_ON_CLOSE);
Container c=getContentPane();
c.setLayout(new FlowLayout());
JPasswordField jp=new JPasswordField();
jp.setColumns(20);//设置密码框长度
jp.setFont(new Font("Arial",Font.BOLD,18));//设置字体
// jp.setEchoChar('#');//设置回显字符
jp.setEchoChar('\u2605');//设置回显字符
c.add(jp);
jp.addActionListener(new ActionListener() {//添加动作监听,回车
@Override
public void actionPerformed(ActionEvent e) {
char ch[]=jp.getPassword();//获取密码的的字符数组
String str=new String(ch);
System.out.println(str);
// TODO 自动生成的方法存根
}
});
setVisible(true);
}
public static void main(String[] args) {
new JPASSWORDFIELD();
// TODO 自动生成的方法存根
}
}
package SWING程序设计2;
import java.awt.*;
import javax.swing.*;
public class JTEXTAREA extends JFrame{
public JTEXTAREA() {
setBounds(100,100,200,100);
setDefaultCloseOperation(EXIT_ON_CLOSE);
Container c=getContentPane();
JTextArea area=new JTextArea();
area.setRows(5);//设定行
area.setColumns(10);//设定列
area.setText("设定内容");//设定内容
area.append("添加内容");//添加内容
area.insert("插入", 2);//在第二的字符后面插入内容
// c.add(area);
area.setFont(new Font("楷体",Font.PLAIN,12));
JScrollPane js=new JScrollPane(area);//为文本域添加滚动条
c.add(js);
setVisible(true);
// TODO 自动生成的构造函数存根
}
public static void main(String[] args) {
new JTEXTAREA();
// TODO 自动生成的方法存根
}
}