2021-06-20

学习java第二十七天

图形界面(2)

常用组件与容器
对话框

package demo01;

import java.awt.Container;
import java.awt.Label;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JFrame;

public class DialogDemo01 extends JDialog{
	public DialogDemo01(JFrame jframe) {
		super(jframe,true);
		
		this.setBounds(100,100,500,500);
		
		Container container1= this.getContentPane();
		container1.setLayout(null);
		//container.add(new Label("大数据五班"));
		JButton button1=new JButton("我是五班");
		button1.setBounds(30,30,200,50);
		container1.add(button1);
		
	}
	public static void main(String[] args) {
		JFrame j=new JFrame();
		j.setVisible(true);
		j.setBounds(100,100,700,500);
		j.setDefaultCloseOperation(EXIT_ON_CLOSE);
		
		
		Container container= j.getContentPane();
		container.setLayout(null);
		
		
		JButton button=new JButton("我要登录");
		button.setBounds(30,30,200,50);
		button.addActionListener(new ActionListener() {

			@Override
			public void actionPerformed(ActionEvent e) {
				DialogDemo01 s=new DialogDemo01(j);
				s.setVisible(true);
				System.out.println("我被点击了");
				
			}
		});
	}
}

面板(无滚动条)

package demo02;

import java.awt.Container;
import java.awt.GridLayout;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
//面板作为容器不能单独存在,必须放到其他容器里面JFrame,jDialog
public class JPane extends JFrame{
	public JPane() {
		Container container=this.getContentPane();
		container.setLayout(new GridLayout(2,1,10,10));
		
		JPanel panel=new JPanel(new GridLayout(1,3));
		panel.add(new JButton("1"));
		panel.add(new JButton("2"));
		panel.add(new JButton("3"));
		
		container.add(panel);
		
		this.setDefaultCloseOperation(EXIT_ON_CLOSE);
		this.setVisible(true);
		this.setBounds(100,100,500,500);
	}
public static void main(String[] args) {
	new JPane();
}
}

面板(有滚动条)

package com.hg.day27.demo02;

import javax.swing.*;
import java.awt.*;

//面板作为容器不能单独存在,必须放到其他容器里面JFrame,JDialog
public class JScrollDemo extends JFrame {
    public JScrollDemo(){
        Container container = this.getContentPane();
        //文本域
        JTextArea textarea =new JTextArea(20,50);
        textarea.setText("大数据五班");

        //scroll面板
        JScrollPane scrollPane =new JScrollPane(textarea);
//        JPanel scrollPane =new JPanel();
//        scrollPane.add(textarea);
        container.add(scrollPane);

        this.setDefaultCloseOperation(EXIT_ON_CLOSE);
        this.setVisible(true);
        this.setBounds(100,100,500,500);

    }

    public static void main(String[] args) {
        new JScrollDemo();
    }
}

布局(流式布局)

package demo03;

import java.awt.FlowLayout;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.WindowConstants;

public class TestFlowLayout {
	public static void main(String[] args) {
		JFrame j=new JFrame();
		j.setVisible(true);
		j.setBounds(100,100,700,500);
		j.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
		//j.setLayout(new FlowLayout());不传参数,默认居中
	    //j.setLayout(new FlowLayout(FlowLayout.RIGHT));
		j.setLayout(new FlowLayout(FlowLayout.LEFT));
		
		JButton button1=new JButton("button1");
		JButton button2=new JButton("button2");
		JButton button3=new JButton("button3");
		JButton button4=new JButton("button4");
		JButton button5=new JButton("button5");
		JButton button6=new JButton("button6");
		
		j.add(button1);
		j.add(button2);
		j.add(button3);
		j.add(button4);
		j.add(button5);
		j.add(button6);
	}
}

布局(方位布局)

package demo03;

import java.awt.BorderLayout;
import java.awt.FlowLayout;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.WindowConstants;

public class TestBorderLayout2 {
	public static void main(String[] args) {
		
		JFrame j=new JFrame();
		j.setVisible(true);
		j.setBounds(100,100,700,500);
		j.setDefaultCloseOperation(WindowConstants.HIDE_ON_CLOSE);
	
		
		
		JButton east=new JButton("east");
		JButton west=new JButton("west");
		JButton south=new JButton("south");
		JButton north=new JButton("north");
		JButton center=new JButton("center");

		j.add(east,BorderLayout.EAST);
		j.add(west,BorderLayout.WEST);
		j.add(south,BorderLayout.SOUTH);
		j.add(north,BorderLayout.NORTH);
		j.add(center,BorderLayout.CENTER);

	}

}

网格布局

package Demo03;

import java.awt.FlowLayout;
import java.awt.GridLayout;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.WindowConstants;
//网格布局
public class TestGrid {
	public static void main(String[] args) {
		JFrame j = new JFrame();
		j.setVisible(true);
		j.setBounds(100, 100, 700, 500);
		j.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
		j.setLayout(new GridLayout(3,2));
		
		JButton button1 = new JButton("button1");
		//button1.setSize(50, 50);
		JButton button2 = new JButton("button2");
		JButton button3 = new JButton("button3");
		JButton button4 = new JButton("button4");
		JButton button5 = new JButton("button5");
		//JButton button6 = new JButton("button6");
		
		j.add(button1);
		j.add(button2);
		j.add(button3);
		j.add(button4);
		j.add(button5);
		//j.add(button6);
		//j.pack();
	}
}

单选按钮

package Demo04;

import java.awt.BorderLayout;
import java.awt.Container;
import javax.swing.ButtonGroup;
import javax.swing.JFrame;
import javax.swing.JRadioButton;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
//单选按钮
public class RadioButton extends JFrame {
	public RadioButton() {
		Container container1 = this.getContentPane();
		//单选框
		JRadioButton radiobutton1 = new JRadioButton("单选1");
		JRadioButton radiobutton2 = new JRadioButton("JRadioButton2");
		JRadioButton radiobutton3 = new JRadioButton("JRadioButton3");
		JRadioButton radiobutton4 = new JRadioButton("JRadioButton4");
		
		ButtonGroup group = new ButtonGroup();
		group.add(radiobutton1);
		group.add(radiobutton2);
		group.add(radiobutton3);
		container1.add(radiobutton1,BorderLayout.CENTER);
		container1.add(radiobutton2,BorderLayout.NORTH);
		container1.add(radiobutton3,BorderLayout.SOUTH);
		container1.add(radiobutton4,BorderLayout.EAST);
	
		this.setDefaultCloseOperation(EXIT_ON_CLOSE);
		this.setVisible(true);
		this.setBounds(100, 100, 500, 500);
	}
	
	public static void main(String[] args) {
		new RadioButton();
	}
	
}

多选按钮

package demo04;

import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.GridLayout;

import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JCheckBox;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
//面板作为容器不能单独存在,必须放到其他容器里面JFrame,jDialog
public class CheckBox extends JFrame{
	public CheckBox() {
		Container container1=this.getContentPane();
		JCheckBox checkbox1=new JCheckBox("自动登录");
		JCheckBox checkbox2=new JCheckBox("记住密码");
		JCheckBox checkbox3=new JCheckBox("checkbox3");
		
		container1.add(checkbox1,BorderLayout.CENTER);
		container1.add(checkbox2,BorderLayout.EAST);
		container1.add(checkbox3,BorderLayout.WEST);
	
		
		
		this.setDefaultCloseOperation(EXIT_ON_CLOSE);
		this.setVisible(true);
		this.setBounds(100,100,500,500);
	}
public static void main(String[] args) {
	new CheckBox();
}
}

下拉列表

package demo05;

import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.GridLayout;
import java.util.Vector;

import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JList;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
//面板作为容器不能单独存在,必须放到其他容器里面	 JFrame.
public class TextConBoxDemo2 extends JFrame{
	public TextConBoxDemo2() {
		
		
		Container container1= this.getContentPane();
		
		//下拉框
		//String[] contents= {"1","五班","java"};
		Vector<Object> contents=new Vector();
		JList jlist=new JList(contents);
		contents.add("学习");
		contents.add("上课");
		contents.add("玩游戏");
		contents.add("上网");
	
		
		this.setDefaultCloseOperation(EXIT_ON_CLOSE);
		this.setVisible(true);
		this.setBounds(100,100,500,500);
		
	}
	public static void main(String[] args) {
		new TextConBoxDemo2();
	}
}

无下拉选择的列表

package demo05;

import java.awt.Container;
import java.awt.GridLayout;
import java.util.Vector;

import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JList;
import javax.swing.JPanel;
//面板作为容器不能单独存在,必须放到其他容器里面JFrame,jDialog
public class TestCombox2 extends JFrame{
	public TestCombox2() {
		Container container=this.getContentPane();
		//String[] contents= {"1","五班","java"};
		Vector<Object> contents=new Vector();
		JList jlist=new JList(contents);
		contents.add("五班");
		contents.add("打游戏");
		contents.add("睡觉");
		
		container.add(jlist);
		this.setDefaultCloseOperation(EXIT_ON_CLOSE);
		this.setVisible(true);
		this.setBounds(100,100,500,500);
	}
public static void main(String[] args) {
	new TestCombox2();
}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值