swing

来源:互联网 发布:徐老师淘宝网 编辑:程序博客网 时间:2024/06/14 09:37
swing学习了那么久,好久没有接触,有所陌生,是时候整理和统计一番了,统计估计没那么好,便于自己日后的理解。首先接触swing,要导包

导包
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
1.定义组件:
JLabel jl_username = new JLabel(“用户名”);
JLabel jl_psw = new JLabel(“密码”);
2.设定布局和添加组件
setLayout(new FlowLayout());
add(jl_username);
add(jf_username);
3.设置窗体属性
setTitle(“登陆窗体”);
setSize(500,400);
setVisible(true);
这是最简单的swing的窗体登录,接下来就是布局,布局是分为4种
1.流式布局FlowLayout
例如:setLayout(new FlowLayout(FlowLayout.LEFT,50,50));
2.边界布局BorderLayout
例如:setLayout(new BorderLayout());
add(jb,BorderLayout.EAST/WEST/SOUTH/NORTH);
3.网格布局GridLayout
setLayout(new GridLayout(3,3));

添加标签图标和背景图片
JLabel jl_username = new JLabel(“用户名”,new ImageIcon(“E:/player1.jpg”),JLabel.CENTER);
添加窗体背景
JLabel jlback = new JLabel(new ImageIcon(“E:/enemy6.jpg”));
jlback.setBounds(0,0,450,300);
getLayeredPane().add(jlback,new Integer(Integer.MIN_VALUE));
((JPanel)getContentPane()).setOpaque(false);
jp1.setOpaque(false);
jp2.setOpaque(false);
setVisible(true);

import javax.swing.*;

import java.awt.*;
import java.awt.event.*;

/**
*内部类
*@author :里小米
*@time :2017/4/6
*/

public class LoginFrame extends JFrame{    JTextField jtf_username = new JTextField(15);    JPasswordField jtf_psw  = new JPasswordField(115);    public LoginFrame(){    JLabel jl_username = new JLabel("用户名",new ImageIcon("E:/player1.jpg"),JLabel.CENTER);//JTextField jtf_username = new JTextField(15);    JLabel jl_psw      = new JLabel("密    码",JLabel.CENTER);//JPasswordField jtf_psw  = new JPasswordField(15);
JButton jb_login = new JButton("登陆");        JButton jb_reset = new JButton("重置");        //设定布局        JPanel titlePanel = new JPanel();        titlePanel.setLayout(new BorderLayout());        titlePanel.add(new JLabel("登陆页面",JLabel.CENTER));//运用标签        titlePanel.setFont(new Font("宋体",Font.BOLD,20));        add(titlePanel,BorderLayout.NORTH);        JPanel jp1 = new  JPanel();        jp1.setLayout(new GridLayout(2,2,0,20));        jp1.add(jl_username);        jp1.add(jtf_username);        jp1.add(jl_psw);        jp1.add(jtf_psw);        add(jp1,BorderLayout.CENTER);        JPanel jp2 = new  JPanel();        jp2.setLayout(new FlowLayout(FlowLayout.CENTER,35,0));        jp2.add(jb_login);        jp2.add(jb_reset);        add(jp2,BorderLayout.SOUTH);        jb_reset.addActionListener(new  Logine());        setTitle("登录界面");        setSize(450,300);        setLocation(200,100);        setDefaultCloseOperation(EXIT_ON_CLOSE);        int width = (int)(Toolkit.getDefaultToolkit().getScreenSize().getWidth());        int height = (int)(Toolkit.getDefaultToolkit().getScreenSize().getHeight());        int f_width = getWidth();        int f_height = getHeight();        setLocation((width - f_width)/2,(height - f_height)/2);        JLabel jlback = new JLabel(new ImageIcon("E:/enemy6.jpg"));        jlback.setBounds(0,0,450,300);        getLayeredPane().add(jlback,new Integer(Integer.MIN_VALUE));        ((JPanel)getContentPane()).setOpaque(false);        jp1.setOpaque(false);        jp2.setOpaque(false);        setVisible(true);    }    class Logine implements ActionListener{        public void actionPerformed(ActionEvent e){            JOptionPane.showMessageDialog(null,"你点了重置按钮");            jtf_username.setText("");            jtf_psw.setText("");        }    }    public static void main(String[] args){        new LoginFrame();    }}
0 0
原创粉丝点击