JFrame是一个容器,他是各个组件的载体,在开发过程中,通过继承Java.swing.JFrame创建要给的窗体
1、新建JFrame对象
JFrame js = new JFrame();
JFrame js = new JFrame("Frame"); //创建JFrame对象 // new JFrame("")中引号关键字等同于 js.setTitle("Frame")
2、设置JFrame的大小和JFrame关闭方式
JFrame jf = new JFrame("大小"); jf.setSize(900,900); //设置窗口大小 jf.setLocation(400,500); //设置窗口位置,默认为(0,0) //jf.setLayout(new FlowLayout())设置窗口为流布局 jf.setBounds(400,500,900,900); //等同于setSize和setLocation jf.setVisible(true); //设置窗口是否可见 窗口默认为不可见 jf.setResizable(true); //设置窗口是否可调整大小,默认为true jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); //关闭图标后,程序作出相应处理 其中: /* DO_NOTHING_ON_CLOSE 什么也不做 HIDE_ON_CLOSE 隐藏当前窗口 DISPOSE_ON_CLOSE 隐藏当前窗口,并释放窗体占有的其他资源 EXIT_ON_CLOSE 结束窗口所在的应用程序 */
JDialog作用是从一个窗体弹出来的另一个窗体,他和JFrame类似
JDialog可以当成JFrame使用,但必须从属于JFrame
1、构造函数:
JDialog A = new JDialog(); JDialog B = new JDialog(js); //指定父窗口 JDialog C = new JDialog(js,"傻狗"); //指定父窗口 + 标题
方法使用和JFrame类似,相当于从属于一个主体JFrame
1.面板也是一种swing容器,他可以作为容器添加容纳其他的组件,但是他必须加载一个容器内
2.JPanel是一种简单的面板,继承来自Java.awt.Container类
1、JPanel实现:
JFrame jf = new JFrame("Frame"); jf.setBounds(400,400,900,900); jf.setVisible(true); JButton jb = new JButton("雷伊"); //按钮 指定”雷伊“文字 JButton jb2 = new JButton("盖亚"); // 按钮 指定”盖亚文字“ JPanel jp = new JPanel(new FlowLayout()); //生成一个面板 jp.add(jb); //组件加入面板容器内 jp.add(jb2); //组件加入面板容器内 jf.add(jp); //将面板加入到另外容器内
功能实现效果:
1.JScrollPane是带滚动条的面板。因此,在碰到需要将⼀个⼤的组件放到⼀个较小的空间的时候,使用该面板
2.JScrollPane内只能添加⼀个组件;因此,如果需要将多个组件添加到⼀个JScrollPane中时,需要先将需要添加的组件添加到JPanel中,再将JPanel添加到JScrollPane中
1、JScorellPane实现:
JFrame jf = new JFrame("Frame"); jf.setBounds(400,400,900,900); jf.setVisible(true); JButton jb =new JButton("卡修斯"); //实例化按钮 jb.setSize(200,300); //按钮位置 JScrollPane jp = new JScrollPane(jb); // 等同于 jp.add(jb); JScorellPane只能添加一个组件 jf.add(jp); jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
效果实现:
作用:显示文本或提示信息
1、构造函数:
JLabel A = new JLabel(); JLabel B = new JLabel(Icon icon); //设置图标 JLabel C = new JLabel(Icon icon, int aligment); // 设置图标 + ⽔平对⻬⽅式 //LEFT左对齐 CENTER居中对齐 RIGHT右对齐 JLabel D = new JLabel(String str, int aligment); // 设置⽂本 + ⽔平对⻬⽅式 LEFT、CENTER、RIGHT JLabel E = new JLabel(String str, Icon icon, int aligment); // 设置⽂本 + 图标 + ⽔平对⻬⽅式
2、JLabel实现
JFrame jf = new JFrame("Frame"); jf.setBounds(400, 300, 1000, 1300); JLabel jlable = new JLabel(); jlable.setText("账号:"); //setText("String"); //等同于JLabel jl = new JLabel("账号:"); jf.add(jlable); jf.setVisible(true); jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
效果实现:
1、构造方法:
JButton A = new JButton(); JButton B = new JButton(String text); // 指定⽂字 JButton C = new JButton(Icon icon); // 指定图标 JButton D = newJButton(String text, Icon icon); // 指定⽂字 + 图标
2、JButton实现
setTooltipText(String text); // 设置提示⽂字 setBorderPainted(); // 设置边界是否显示 setEnabled(); // 设置按钮是否可⽤
JFrame jf = new JFrame("Frame"); jf.setLayout(new FlowLayout()); //setLayout(new Floayout)设置流布局 jf.setBounds(400, 300, 200, 300); //创建设置窗口 JButton jb = new JButton("按钮1"); jb.setEnabled(false); //setEnabled 按钮是否能够被选中 默认为true jb.setBorderPainted(true); //按钮边框是否显示 默认为true jf.add(jb); jf.setVisible(true); jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
代码实现:
有边框 不可选中