java_基础_GUI开发②

一、拆分窗格组件—JSpiltPane

1、JSplitPane属于容器类组件
2、实例代码


import java.awt.*;
import javax.swing.*;
public class Demo extends JFrame{
    JSplitPane jsp1,jsp2;
    JLabel jl1,jl2,jl3;
    public static void main(String[] args) {
        Demo a=new Demo();
    }
    public Demo()
    {
        jl1=new JLabel("左");
        jl2=new JLabel("右");
        jl3=new JLabel("下");
        //设置为左右分割,依次加入要加入的组件
        jsp1=new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,jl1,jl2);
        //设置为上下分割,依次加入要加入的组件
        jsp2=new JSplitPane(JSplitPane.VERTICAL_SPLIT,jsp1,jl3);

        //设置窗体属性
        this.add(jsp2);
        this.setSize(300,300);
        this.setVisible(true);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    }
}

3、效果图

二、多行文本框组件—JTextArea

1、示例代码

import java.awt.*;
import javax.swing.*;
public class Demo extends JFrame{
    JTextArea jta=null;
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Demo a=new Demo();
    }
    public Demo()
    {
        jta=new JTextArea();
        this.add(jta);
        this.setSize(300,300);
        this.setVisible(true);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }

}

2、效果图

三、选项卡窗格

1、示例代码

import java.awt.*;

import javax.swing.*;
public class Demo extends JFrame{
    JPanel jp1,jp2,jp3;
    JTabbedPane jtp;
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Demo a=new Demo();
    }
    public Demo()
    {
        jp1=new JPanel();
        jp1.setBackground(Color.BLUE);
        jp2=new JPanel();
        jp2.setBackground(Color.RED);
        jp3=new JPanel();
        jp3.setBackground(Color.gray);

        jtp=new JTabbedPane();
        jtp.add("标签1",jp1);
        jtp.add("标签2",jp2);
        jtp.add("标签3",jp3);

        this.add(jtp);
        this.setSize(300,300);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        this.setVisible(true);
    }

}

2、效果图

四、菜单条组件

1、菜单条组件包括菜单条组件(JMenuBar),菜单组件(JMenu),菜单项组件(JMenuItem)。
其中,菜单条组件是放置菜单组件的容器类组件;菜单组件相当于枝干,可以相互嵌套,即一个菜单组件可以添加另一个菜单组件,变成子菜单;菜单项组件就相当于枝叶,用来完成各种功能,被包含于菜单组件中
2、示例代码

import java.awt.*;
import javax.swing.*;
public class Demo extends JFrame{
    JMenuBar jmb;//工具条组件
    JMenu jm1_1,jm1_2,jm1_3,jm2_1;//菜单组建,可以添加JMenu和JMenuitem
    JMenuItem jmi1_1,jmi1_2,jmi1_3,jmi1_4,jmi2_1,jmi2_2;//菜单选项
    public static void main(String[] args) {
        Demo a=new Demo();
    }
    public Demo()
    {
        jmb=new JMenuBar();
        jm1_1=new JMenu("菜单1");
        jm1_2=new JMenu("菜单2");
        jm1_3=new JMenu("菜单3");

        jm2_1=new JMenu("子菜单1");

        jmi1_1=new JMenuItem("菜单选项1");
        jmi1_2=new JMenuItem("菜单选项2");
        jmi1_3=new JMenuItem("菜单选项3");
        jmi1_4=new JMenuItem("菜单选项4");

        jmi2_1=new JMenuItem("子菜单选项1");
        jmi2_2=new JMenuItem("子菜单选项2");

        jm2_1.add(jmi2_1);
        jm2_1.add(jmi2_2);

        jm1_1.add(jm2_1);//菜单项之间的嵌套
        jm1_1.addSeparator();//设置选项之间的分割线
        jm1_1.add(jmi1_1);
        jm1_1.add(jmi1_2);
        jm1_1.add(jmi1_3);
        jm1_1.add(jmi1_4);

        jmb.add(jm1_1);
        jmb.add(jm1_2);
        jmb.add(jm1_3);

        this.setJMenuBar(jmb);//设置添加菜单条组件

        this.setSize(300,300);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        this.setVisible(true);
    }
}

五、工具条组件

1、工具条组件是一个容器类组件,用来放按钮
2、示例代码

import java.awt.*;

import javax.swing.*;
public class Demo extends JFrame{
    JToolBar jtb;
    JButton jb1,jb2,jb3;
    public static void main(String[] args) {
        Demo a=new Demo();
    }
    public Demo()
    {
        jtb=new JToolBar();//创建工具条
        jb1=new JButton("按钮1");
        jb1.setToolTipText("按钮1");
        jb2=new JButton("按钮2");
        jb2.setToolTipText("按钮2");
        jb3=new JButton("按钮3");
        jb3.setToolTipText("按钮3");

        jtb.add(jb1);
        jtb.add(jb2);
        jtb.add(jb3);

        this.add(jtb,BorderLayout.NORTH);//设置工具条的位置

        this.setSize(300,300);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        this.setVisible(true);
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值