java笔记之图形类----非组件容器详解

Java的非容器组件:

加入非容器步骤:

1.创建一个Jframe

2.创建面板Jpanel

3.将面板加入到Jframe中

4.添加Jlabel标签

5.新建组件

a:JTextField  文本输入框  可指定输入框大小

b:JPasswordField 文本密文输入

JPasswordField passwordField=new JPasswordField(10);

c:JRadioButton 单选按钮

JRadioButton man = new JRadioButton("男",true);
JRadioButton woman = new JRadioButton("女");
//如果是单选框必须要进行分组,同一个组的单选框只能选择其中的一个
ButtonGroup group = new ButtonGroup();
group.add(woman);
group.add(man);

d:JComboBox下拉框

Object[] arr = {"北京","上海","广州","深圳","湛江"};
JComboBox citys = new JComboBox(arr);

e:JCheckBox多选框

JCheckBox checkBox1 = new JCheckBox("篮球",true);

f:JTextArea大文本输入框

JTextArea area = new JTextArea(20, 15);
area.setLineWrap(true); //设置自动换行

6.将其加入面板中

7.初始化frame

import javax.swing.ButtonGroup;
import javax.swing.JCheckBox;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JRadioButton;
import javax.swing.JTextArea;
import javax.swing.JTextField;

import cn.itcast.util.FrameUtil;

/*
 非容器组件:
 */

public class Demo1 {
    
    public static void main(String[] args) {
        JFrame frame= new JFrame("注册");
        //创建一个面板
        JPanel panel = new JPanel();
        frame.add(panel); 
        //用户名
        JLabel nameLabel = new JLabel("用户名");
        //用户名的输入框
        JTextField nameField = new JTextField(12);
        //把用户名的组件添加到面板上
        panel.add(nameLabel);
        panel.add(nameField);
        
        //密码
        JLabel passLabel= new JLabel("密码");
        //密码框
        JPasswordField passField = new JPasswordField(12);
        //把密码的组件添加到面板
        panel.add(passLabel);
        panel.add(passField);
        
        //性别--单选框
        JLabel sexLabel = new JLabel("性别");
        JRadioButton man = new JRadioButton("男",true);
        JRadioButton woman = new JRadioButton("女");
        //如果是单选框必须要进行分组,同一个组的单选框只能选择其中的一个
        ButtonGroup group = new ButtonGroup();
        group.add(woman);
        group.add(man);
        //把性别组件添加到面板上
        panel.add(sexLabel);
        panel.add(man);
        panel.add(woman);
        
        //来自城市--->下拉框
        JLabel cityLabel = new JLabel("来自的城市");
        Object[]  arr = {"北京","上海","广州","深圳","湛江"};
        JComboBox citys = new JComboBox(arr);
        panel.add(cityLabel);
        panel.add(citys);
        
        //兴趣爱好---->复选框
        JLabel hobitLabel = new JLabel("兴趣爱好:");
        JCheckBox checkBox1 = new JCheckBox("篮球",true);
        JCheckBox checkBox2 = new JCheckBox("java",true);
        JCheckBox checkBox3 = new JCheckBox("javascript");
        JCheckBox checkBox4 = new JCheckBox("android");
        panel.add(hobitLabel);
        panel.add(checkBox1);
        panel.add(checkBox2);
        panel.add(checkBox3);
        panel.add(checkBox4);
        
        
        //个人简介
        JLabel jLabel = new JLabel("个人简介");
        JTextArea area = new JTextArea(20, 15);
        area.setLineWrap(true); //设置自动换行 
        panel.add(jLabel);
        panel.add(area);
        
        FrameUtil.initFrame(frame, 500, 400);
    }
    
    

 效果图:

菜单组件
菜单条(MenuBar) 、 菜单(Menu) 、 菜单项(MenuItem),

菜单条可以添加菜单,菜单可以添加菜单项
复选菜单:首先菜单添加菜单 , 菜单添加菜单项。

 

import java.awt.BorderLayout;

import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JTextArea;

public class Demo04 {

    JFrame frame = new JFrame("记事本");
    //菜单条
    JMenuBar bar = new JMenuBar();
    //文件菜单
    JMenu fileMenu = new JMenu("文件");
    JMenu editMebu =new JMenu("编辑");
    JMenu openMenuItem =new JMenu("打开");
    //菜单项
    JMenuItem saveMenuItem =new JMenuItem("保存");
    JMenuItem aboutMenuItem =new JMenuItem("关于");
    JMenuItem closeMenuItem =new JMenuItem("关闭");
    JMenuItem openMenuItemAll =new JMenuItem("打开所有");
    JMenuItem openMenuItemOne =new JMenuItem("打开左侧文件");
    JTextArea area = new JTextArea(20,30);
    public  void initNotepad(){
        //菜单添加菜单项目
        fileMenu.add(saveMenuItem);
    
        editMebu.add(aboutMenuItem);
        editMebu.add(closeMenuItem);
        //复选菜单
        openMenuItem.add(openMenuItemAll);
        openMenuItem.add(openMenuItemOne);
        //菜单添加菜单就是复选菜单
        fileMenu.add(openMenuItem);
        
        //菜单条添加菜单
        bar.add(fileMenu);
        bar.add(editMebu);
        
        //添加菜单条
        frame.add(bar,BorderLayout.NORTH);
        frame.add(area);
        
        Demo01.initJframe(frame, 300, 400);
    }
    public static void main(String[] args) {
        new Demo04().initNotepad();
    }
}

 

posted @ 2017-06-19 17:59  风居住5的街道  阅读(399)  评论(0编辑  收藏  举报