public class TestFrame {
public static void main(String[] args) {
//Frame
Frame frame = new Frame("我的带个JAVA图形界面窗口");
//设置可见性
frame.setVisible(true);
//设置窗口大小
frame.setSize(400, 400);
//设置背景颜色
frame.setBackground(Color.BLUE);
//设置初始位置
frame.setLocation(200,200);
//设置大小固定
frame.setResizable(false);
}
}
封装后,创建多个frame
package com.gui.lesson01;
import java.awt.*;
public class TestFrame2 {
public static void main(String[] args) {
//展示多个窗口
MyFrame frame1 = new MyFrame(100, 100, 100, 100,Color.black);
MyFrame frame2 = new MyFrame(200, 200, 200, 200,Color.red);
MyFrame frame3 = new MyFrame(300, 300, 300, 300,Color.blue);
}
}
/**
* MyFrame
*/
class MyFrame extends Frame {
static int id = 0;//可能多个窗口
public MyFrame(int x,int y,int w,int h,Color bgColor){
super("我的第"+(++id)+"窗口");
setVisible(true);
setBounds(x, y, w, h);
setBackground(bgColor);
}
}
package com.gui.lesson01;
import java.awt.*;
import java.awt.event.*;
//可以看成是一个空间,不能单独存在,需要Frame
public class TestPanel {
public static void main(String[] args) {
Frame frame = new Frame();
Panel panel = new Panel();
//设置布局
frame.setLayout(null);
frame.setVisible(true);
frame.setSize(300, 300);
frame.setLocation(400, 400);
frame.setBackground(Color.blue);
//设置panel--面板布局
panel.setBounds(50, 50, 100, 100);
panel.setBackground(Color.red);
frame.add(panel);
//监听关闭时间
frame.addWindowListener(new WindowAdapter(){
@Override
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
}
}
package com.gui.lesson01;
import java.awt.*;
public class TestFlowLayout {
public static void main(String[] args) {
Frame frame = new Frame();
//按钮组件
Button button1 = new Button("button1");
Button button2 = new Button("button2");
Button button3 = new Button("button3");
//设置为流式布局
frame.setLayout(new FlowLayout(FlowLayout.RIGHT));
frame.setBounds(200, 200, 200, 200);
frame.setVisible(true);
frame.add(button1);
frame.add(button2);
frame.add(button3);
}
}
package com.gui.lesson01;
import java.awt.*;
public class TestBorderLayout {
public static void main(String[] args) {
Frame frame = new Frame();
Button button1 = new Button("button1");
Button button2 = new Button("button2");
Button button3 = new Button("button3");
Button button4 = new Button("button4");
Button button5 = new Button("button5");
frame.setBounds(200, 200, 500, 500);
frame.setLayout(new BorderLayout());
frame.add(button1,BorderLayout.EAST);
frame.add(button2,BorderLayout.WEST);
frame.add(button3,BorderLayout.SOUTH);
frame.add(button4,BorderLayout.NORTH);
frame.add(button5,BorderLayout.CENTER);
frame.setVisible(true);
}
}
package com.gui.lesson01;
import java.awt.*;
public class TestGridLayout {
public static void main(String[] args) {
Frame frame = new Frame();
Button button1 = new Button("button1");
Button button2 = new Button("button2");
Button button3 = new Button("button3");
Button button4 = new Button("button4");
Button button5 = new Button("button5");
frame.setBounds(200, 200, 500, 500);
frame.setLayout(new GridLayout(3,2));
frame.add(button1);
frame.add(button2);
frame.add(button3);
frame.add(button4);
frame.add(button5);
frame.pack();//java函数,最优处理
frame.setVisible(true);
}
}
package com.gui.lesson01;
import java.awt.*;
import java.awt.event.*;
public class TestLayout {
public static void main(String[] args) {
Frame frame = new Frame();
Panel panel1 = new Panel(new BorderLayout());
Panel panel2 = new Panel(new BorderLayout());
Panel panel3 = new Panel(new GridLayout(2,1));
Panel panel4 = new Panel(new GridLayout(2,2));
frame.setBounds(950,400,500,350);
frame.setVisible(true);
frame.setLayout(new GridLayout(2,1));
Button button1 = new Button("west-1");
Button button2 = new Button("east-1");
panel1.add(button1,BorderLayout.WEST);
panel1.add(button2,BorderLayout.EAST);
Button button3 = new Button("upcup");
Button button4 = new Button("upcdown");
panel3.add(button3);
panel3.add(button4);
panel1.add(panel3);
frame.add(panel1);
Button button5 = new Button("west-2");
Button button6 = new Button("east-2");
panel2.add(button5,BorderLayout.WEST);
panel2.add(button6,BorderLayout.EAST);
Button button7 = new Button("downc1");
Button button8 = new Button("downc2");
Button button9 = new Button("downc3");
Button button10 = new Button("downc4");
panel4.add(button7);
panel4.add(button8);
panel4.add(button9);
panel4.add(button10);
panel2.add(panel4);
frame.add(panel2);
frame.addWindowListener(new WindowAdapter(){
@Override
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
}
}
package com.gui.lesson02;
import java.awt.*;
import java.awt.event.*;
public class TestActionEvent {
public static void main(String[] args) {
//按下按钮触发时间
Frame frame = new Frame();
Button button = new Button("end");
frame.setBounds(200, 200, 500, 500);
frame.setVisible(true);
MyActionListener myActionListener = new MyActionListener();
button.addActionListener(myActionListener);
frame.add(button);
windowClose(frame);
}
public static void windowClose(Frame frame){
frame.addWindowListener(new WindowAdapter(){
@Override
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
}
}
class MyActionListener implements ActionListener{
@Override
public void actionPerformed(ActionEvent e) {
System.exit(0);
}
}
package com.gui.lesson02;
import java.awt.*;
import java.awt.event.*;
public class TestActionEvent02 {
public static void main(String[] args) {
//按下按钮触发时间
Frame frame = new Frame();
frame.setLayout(new FlowLayout());
Button button1 = new Button("start");
Button button2 = new Button("stop");
Button button3 = new Button("other");
//setActionCommand可以显示的定义触发会返回的命令,如果不显示定义则会使用默认值
button2.setActionCommand("end");
frame.setBounds(200, 200, 500, 500);
frame.setVisible(true);
MyMonitor myMonitor = new MyMonitor();
button1.addActionListener(myMonitor);
button2.addActionListener(myMonitor);
button3.addActionListener(myMonitor);
frame.add(button1);
frame.add(button2);
frame.add(button3);
windowClose(frame);
}
public static void windowClose(Frame frame){
frame.addWindowListener(new WindowAdapter(){
@Override
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
}
}
class MyMonitor implements ActionListener{
@Override
public void actionPerformed(ActionEvent e) {
///getActionCommand 获取按钮信息
String temp = e.getActionCommand();
if (temp == "start") {
System.out.println("开始");
}else if(temp == "end"){
System.exit(0);
}else{
System.out.println("出错了");
}
}
}
package come.xiaobai.gui.lesson02;
import java.awt.*;
import java.awt.event.*;
public class TestText01 {
public static void main(String[] args) {
//只管启动
MyFrame myFrame = new MyFrame();
}
}
class MyFrame extends Frame{
public MyFrame(){
TextField textField = new TextField();
add(textField);
//监听文本框输入的文字
MyActionListener2 myActionListener2 = new MyActionListener2();
//按下回车会触发输入框事件
textField.addActionListener(myActionListener2);
//设置替换编码
textField.setEchoChar(‘*‘);
setVisible(true);
pack();
}
}
class MyActionListener2 implements ActionListener{
@Override
public void actionPerformed(ActionEvent e) {
TextField textField = (TextField)e.getSource();//e.getSource(),获得资源返回的是object对象,可以转换成任何对象,要获取文本,转换成TextField对象
textField.getText();//获取输入框中的文本
System.out.println(textField.getText());
textField.setText("");
}
}
oop原则:组合,大于继承!
//继承
class A extends B {
}
//组合
class A{
public B b;
}
原实现代码:
package come.xiaobai.gui.lesson02;
import java.awt.*;
import java.awt.event.*;
public class TestCalc {
public static void main(String[] args) {
Calculator calculator = new Calculator();
}
}
//计算器类
class Calculator extends Frame{
public Calculator(){
//3个文本框
TextField num1 = new TextField();
TextField num2 = new TextField();
TextField num3 = new TextField();
//1个按钮
Button button = new Button("=");
button.addActionListener(new MyCalculatorListener(num1,num2,num3));
//1个标签
Label label = new Label("+");
setLayout(new FlowLayout());
add(num1);
add(label);
add(num2);
add(button);
add(num3);
pack();
setVisible(true);
}
}
class MyCalculatorListener implements ActionListener{
private TextField num1,num2,num3;
@Override
public void actionPerformed(ActionEvent e) {
//1、获取输入数字
int n1 = Integer.parseInt(num1.getText());
int n2 = Integer.parseInt(num2.getText());
//2、算数,结果放在第三个文本
int n3 = n1 + n2;
num3.setText(""+n3);
//3.清空前2个数据
num1.setText("");
num2.setText("");
}
public MyCalculatorListener(TextField num1,TextField num2,TextField num3) {
this.num1 = num1;
this.num2 = num2;
this.num3 = num3;
}
}
组合优化:
package come.xiaobai.gui.lesson02;
import java.awt.*;
import java.awt.event.*;
public class TestCalc2 {
public static void main(String[] args) {
Calculator2 calculator2 = new Calculator2();
calculator2.loadFrame();
}
}
//计算器类
class Calculator2 extends Frame{
//属性
TextField num1,num2,num3;
//方法
public void loadFrame(){
//3个文本框
num1 = new TextField(10);
num2 = new TextField(10);
num3 = new TextField(10);
//1个按钮
Button button = new Button("=");
button.addActionListener(new MyCalculatorListener2(this));
//1个标签
Label label = new Label("+");
//布局
setLayout(new FlowLayout());
add(num1);
add(label);
add(num2);
add(button);
add(num3);
pack();
setVisible(true);
}
}
class MyCalculatorListener2 implements ActionListener{
//获取计算器对象,在一个类中获取另外一个类
Calculator2 calculator2 = null;
@Override
public void actionPerformed(ActionEvent e) {
//1、获取输入数字
int n1 = Integer.parseInt(calculator2.num1.getText());
int n2 = Integer.parseInt(calculator2.num2.getText());
calculator2.num3.setText(""+(n1+n2));
calculator2.num1.setText("");
calculator2.num2.setText("");
//2、算数,结果放在第三个文本
//3.清空前2个数据
}
public MyCalculatorListener2(Calculator2 calculator2) {
this.calculator2 = calculator2;
}
}
内部类:
package come.xiaobai.gui.lesson02;
import java.awt.*;
import java.awt.event.*;
public class TestCalc3 {
public static void main(String[] args) {
Calculator3 calculator3 = new Calculator3();
calculator3.loadFrame();
}
}
//计算器类
class Calculator3 extends Frame{
//属性
TextField num1,num2,num3;
//方法
public void loadFrame(){
//3个文本框
num1 = new TextField(10);
num2 = new TextField(10);
num3 = new TextField(10);
//1个按钮
Button button = new Button("=");
button.addActionListener(new MyCalculatorListener3());
//1个标签
Label label = new Label("+");
//布局
setLayout(new FlowLayout());
add(num1);
add(label);
add(num2);
add(button);
add(num3);
pack();
setVisible(true);
}
//内部类
private class MyCalculatorListener3 implements ActionListener{
//获取计算器对象,在一个类中获取另外一个类
@Override
public void actionPerformed(ActionEvent e) {
//1、获取输入数字
int n1 = Integer.parseInt(num1.getText());
int n2 = Integer.parseInt(num2.getText());
num3.setText(""+(n1+n2));
num1.setText("");
num2.setText("");
//2、算数,结果放在第三个文本
//3.清空前2个数据
}
}
}
package come.xiaobai.gui.lesson03;
import java.awt.*;
import java.awt.event.*;
public class TestPaint {
public static void main(String[] args) {
new MyPaint().loadFrame();
}
}
class MyPaint extends Frame{
public void loadFrame() {
setBounds(200, 200, 600, 500);
setVisible(true);
}
@Override
public void paint(Graphics g) {
//需要有颜色,画笔可以画画
g.setColor(Color.red);
g.drawOval(100, 100, 100, 100);
//画笔用完,要还原最初习惯
g.drawOval(100, 100, 100, 100);
}
}
模拟画图工具
package com.xiaobai.gui.lesson03;
import java.awt.*;
import java.awt.event.*;
import java.util.ArrayList;
import java.util.Iterator;
public class TestMouseListener {
public static void main(String[] args) {
new MyFrame("画图");
}
}
class MyFrame extends Frame{
//监听鼠标当前位置,需要集合来存储这个点
ArrayList points;
public MyFrame(String title){
super(title);
setBounds(200, 200, 600, 500);
setVisible(true);
//存鼠标的点
points = new ArrayList<>();
//鼠标监听器针对这个窗口
this.addMouseListener(new MyMouseListener());
}
@Override
public void paint(Graphics g) {
// 画画需要监听鼠标事件
Iterator iterator = points.iterator();
while(iterator.hasNext()){
Point point = (Point)iterator.next();
g.setColor(Color.red);
g.fillOval(point.x, point.y, 10, 10);
}
}
//添加一个点到页面上
public void addPaint(Point point){
points.add(point);
}
private class MyMouseListener extends MouseAdapter{
//监听鼠标弹起鼠标 按下、弹起
@Override
public void mousePressed(MouseEvent e) {
MyFrame myFrame = (MyFrame)e.getSource();
//这里点击时,会在页面加点
myFrame.addPaint(new Point(e.getX(),e.getY()));
//点击后重画
myFrame.repaint();
}
}
}
package com.xiaobai.gui.lesson03;
import java.awt.*;
import java.awt.event.*;
public class TestWindow {
public static void main(String[] args) {
myWindow myWindow = new myWindow();
}
}
class myWindow extends Frame{
public myWindow() {
setBounds(200, 200, 600, 500);
setVisible(true);
// addWindowListener(new myWindowListener());
//优化使用匿名内部类
this.addWindowListener(
new WindowAdapter(){
@Override
public void windowClosing(WindowEvent e) {
System.exit(0);
}
}
);
}
class myWindowListener extends WindowAdapter{
@Override
public void windowClosing(WindowEvent e) {
System.exit(0);//0正常退出,程序关闭,1为非正常退出
}
}
}
package com.xiaobai.gui.lesson03;
import java.awt.*;
import java.awt.event.*;
public class TestKey {
public static void main(String[] args) {
new KeyFrame();
}
}
class KeyFrame extends Frame{
public KeyFrame() {
setBounds(200, 200, 500, 600);
setVisible(true);
this.addKeyListener(
new KeyAdapter(){
@Override
public void keyPressed(KeyEvent e) {
int keycode = e.getKeyCode();
if (keycode == KeyEvent.VK_B) {
System.out.println("按下了B");
}
}
}
);
this.addWindowListener(
new WindowAdapter(){
@Override
public void windowClosing(WindowEvent e) {
System.exit(0);
}
}
);
}
}
package com.xiaobai.gui.lesson04;
import java.awt.Color;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.SwingConstants;
import javax.swing.WindowConstants;
public class JFrameDemo {
//init();初始化
public void init() {
//顶级窗口
JFrame jFrame = new JFrame("这是一个JFrame窗口");
jFrame.setVisible(true);
jFrame.setBounds(200, 200, 600, 500);
JLabel jLabel = new JLabel("增加文字");
jFrame.add(jLabel);
//让文本水平居中
jLabel.setHorizontalAlignment(SwingConstants.CENTER);
//关闭事件
jFrame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
jFrame.getContentPane().setBackground(Color.red);
}
public static void main(String[] args) {
//建立窗口
new JFrameDemo().init();
}
}
package com.xiaobai.gui.lesson04;
import java.awt.Color;
import java.awt.Container;
import java.awt.event.*;
import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.WindowConstants;
public class DialogDemo extends JFrame {
public static void main(final String[] args) {
new DialogDemo();
}
public DialogDemo() {
this.setBounds(200, 200, 600, 600);
this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
this.setVisible(true);
Container contentPane = this.getContentPane();
contentPane.setBackground(Color.red);
contentPane.setLayout(null);
JButton jButton = new JButton("点击弹出对话框");
jButton.setBounds(30, 30, 200, 50);
//点击按钮时弹出弹窗,需要监听
jButton.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent e) {
//弹窗
new MyDialog();
}
});
contentPane.add(jButton);
}
}
class MyDialog extends JDialog{
public MyDialog() {
this.setBounds(50, 50, 300, 300);
this.setVisible(true);
Container contentPane1 = this.getContentPane();
contentPane1.setBackground(Color.blue);
contentPane1.setLayout(null);
}
}
label:
new Label("xxx");
Jlabel:
new JLabel("xxx");
package com.xiaobai.gui.lesson04;
import java.awt.*;
import javax.swing.Icon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.SwingConstants;
import javax.swing.WindowConstants;
//图标,需要实现类,Frame继承
public class IconDemo extends JFrame implements Icon{
private int width;
private int height;
public void init() {
IconDemo iconDemo = new IconDemo(15,15);
//图标放在标签,也可以放在按钮上
JLabel jLabel = new JLabel("icon",iconDemo,SwingConstants.CENTER);
Container contentPane = getContentPane();
contentPane.add(jLabel);
this.setVisible(true);
this.setBounds(100, 100, 500, 500);
this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
}
public static void main(String[] args) {
new IconDemo().init();
}
@Override
public int getIconHeight() {
return this.height;
}
@Override
public int getIconWidth() {
return this.width;
}
@Override
public void paintIcon(Component c, Graphics g, int x, int y) {
g.fillOval(x, y, width, height);
}
public IconDemo() {
}
public IconDemo(int width, int height) {
this.width = width;
this.height = height;
}
}
package com.xiaobai.gui.lesson04;
import java.awt.Container;
import java.net.URL;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.SwingConstants;
import javax.swing.WindowConstants;
public class ImageIconDemo extends JFrame {
public ImageIconDemo() {
//获取图片地址
JLabel jLabel = new JLabel("ImageIcin");
URL url = ImageIconDemo.class.getResource("1.png");//获取同类下的资源
ImageIcon myImageIcon = new ImageIcon(url);
jLabel.setIcon(myImageIcon);
jLabel.setHorizontalAlignment(SwingConstants.CENTER);
Container contentPane = getContentPane();
contentPane.add(jLabel);
setVisible(true);
setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
setBounds(100, 100, 500, 500);
}
public static void main(String[] args) {
new ImageIconDemo();
}
}
package com.xiaobai.gui.lesson05;
import java.awt.*;
import java.awt.Container;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.WindowConstants;
public class JPanelDemo extends JFrame{
public JPanelDemo() {
Container contentPane = getContentPane();
contentPane.setBackground(Color.red);
contentPane.setLayout(new GridLayout(2,1,10,10));//后面参数的意思是间距
JPanel jPanel = new JPanel(new GridLayout(1,3));
jPanel.add(new JButton("1"));
jPanel.add(new JButton("2"));
jPanel.add(new JButton("3"));
setBounds(100, 100, 500, 500);
setVisible(true);
setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
add(jPanel);
}
public static void main(String[] args) {
new JPanelDemo();
}
}
JScrollPanel
package com.xiaobai.gui.lesson05;
import java.awt.Container;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.WindowConstants;
public class JScrollPanelDemo extends JFrame{
public JScrollPanelDemo() {
Container contentPane = this.getContentPane();
JTextArea jTextArea = new JTextArea(20,50);
jTextArea.setText("这里输入文字。");
JScrollPane jScrollPanel = new JScrollPane(jTextArea);
contentPane.add(jScrollPanel);
this.setBounds(100, 100, 500, 500);
this.setVisible(true);
this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
}
public static void main(String[] args) {
new JScrollPanelDemo();
}
}
图片按钮
package com.xiaobai.gui.lesson05;
import java.awt.Color;
import java.awt.Container;
import java.net.URL;
import javax.swing.*;
import javax.swing.Icon;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
public class ButtonDemo01 extends JFrame{
public ButtonDemo01() {
Container contentPane = this.getContentPane();
contentPane.setBackground(Color.red);
URL url = ButtonDemo01.class.getResource("1.png");
Icon imageIcon = new ImageIcon(url);//这样就将图片变为了图标
//把图标放在按钮上
JButton jButton = new JButton();
jButton.setIcon(imageIcon);
jButton.setText("这是一个按钮");
jButton.setToolTipText("This is a Button.");
JPanel jPanel = new JPanel();
jPanel.add(jButton);
this.add(jPanel);
this.setBounds(100, 100, 500, 500);
this.setVisible(true);
this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
}
public static void main(String[] args) {
new ButtonDemo01();
}
}
单选框
package com.xiaobai.gui.lesson05;
import java.awt.Color;
import java.awt.Container;
import java.net.URL;
import javax.swing.*;
public class ButtonDemo02 extends JFrame{
public ButtonDemo02() {
Container contentPane = this.getContentPane();
contentPane.setBackground(Color.red);
//单选框
JRadioButton jRadioButton01 = new JRadioButton("01");
JRadioButton jRadioButton02 = new JRadioButton("02");
JRadioButton jRadioButton03 = new JRadioButton("03");
//单选只能选一个,需要分钟
ButtonGroup buttonGroup = new ButtonGroup();
buttonGroup.add(jRadioButton01);
buttonGroup.add(jRadioButton02);
buttonGroup.add(jRadioButton03);
JPanel jPanel = new JPanel();
jPanel.add(jRadioButton01);
jPanel.add(jRadioButton02);
jPanel.add(jRadioButton03);
this.add(jPanel);
this.setBounds(100, 100, 500, 500);
this.setVisible(true);
this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
}
public static void main(String[] args) {
new ButtonDemo02();
}
}
多选框
package com.xiaobai.gui.lesson05;
import java.awt.Color;
import java.awt.Container;
import java.net.URL;
import javax.swing.*;
public class ButtonDemo03 extends JFrame{
public ButtonDemo03() {
Container contentPane = this.getContentPane();
contentPane.setBackground(Color.red);
URL url = ButtonDemo03.class.getResource("1.png");
Icon imageIcon = new ImageIcon(url);//这样就将图片变为了图标
//多选框
JCheckBox jRadioButton01 = new JCheckBox("01");
JCheckBox jRadioButton02 = new JCheckBox("02");
JCheckBox jRadioButton03 = new JCheckBox("03");
JPanel jPanel = new JPanel();
jPanel.add(jRadioButton01);
jPanel.add(jRadioButton02);
jPanel.add(jRadioButton03);
this.add(jPanel);
this.setBounds(100, 100, 500, 500);
this.setVisible(true);
this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
}
public static void main(String[] args) {
new ButtonDemo03();
}
}
下拉框
package com.xiaobai.gui.lesson06;
import java.awt.Container;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.WindowConstants;
public class TestComboboxDemo01 extends JFrame{
public TestComboboxDemo01() {
Container contentPane = getContentPane();
JComboBox jComboBox = new JComboBox();
jComboBox.addItem(null);
jComboBox.addItem("热映");
jComboBox.addItem("下架");
jComboBox.addItem("即将上映");
contentPane.add(jComboBox);
this.setBounds(50, 500, 500, 500);
this.setVisible(true);
this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
}
public static void main(String[] args) {
new TestComboboxDemo01();
}
}
列表框
package com.xiaobai.gui.lesson06;
import java.awt.Container;
import javax.swing.*;
public class TestComboboxDemo02 extends JFrame{
public TestComboboxDemo02() {
Container contentPane = getContentPane();
String[] contents = {"1","2","3"};
JList jList = new JList(contents);
contentPane.add(jList);
this.setBounds(50, 500, 500, 500);
this.setVisible(true);
this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
}
public static void main(String[] args) {
new TestComboboxDemo02();
}
}
文本框
package com.xiaobai.gui.lesson06;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class TestTextDemo01 extends JFrame {
public TestTextDemo01() {
Container contentPane = getContentPane();
JTextField jTextField = new JTextField("hello");
JTextField jTextField2 = new JTextField("world",20);
contentPane.add(jTextField,BorderLayout.NORTH);
contentPane.add(jTextField2,BorderLayout.SOUTH);
this.setBounds(50, 500, 500, 500);
this.setVisible(true);
this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
}
public static void main(String[] args) {
new TestTextDemo01();
}
}
密码框
package com.xiaobai.gui.lesson06;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class TestTextDemo02 extends JFrame {
public TestTextDemo02() {
Container contentPane = getContentPane();
JPasswordField jPasswordField = new JPasswordField();
jPasswordField.setEchoChar(‘*‘);
contentPane.add(jPasswordField);
this.setBounds(50, 500, 500, 500);
this.setVisible(true);
this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
}
public static void main(String[] args) {
new TestTextDemo02();
}
}
文本域
package com.xiaobai.gui.lesson05;
import java.awt.Container;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.WindowConstants;
public class JScrollPanelDemo extends JFrame{
public JScrollPanelDemo() {
Container contentPane = this.getContentPane();
JTextArea jTextArea = new JTextArea(20,50);
jTextArea.setText("这里输入文字。");
JScrollPane jScrollPanel = new JScrollPane(jTextArea);
contentPane.add(jScrollPanel);
this.setBounds(100, 100, 500, 500);
this.setVisible(true);
this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
}
public static void main(String[] args) {
new JScrollPanelDemo();
}
}
原文:https://www.cnblogs.com/novice77/p/14607395.html