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(); } }

 
                     
                    
                 
                    
                
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号