Java visual interface design (login interface design)

1. The interface is displayed in the center

frame.setResizable(false);

fame.setLocationRelativeTo(null);

frame.setVisible(true)

2. Full screen operation

Dimension screenSize=Toolkit.getDefaultToolkit().getScreenSize();

frame.setUndecorated(true);

frame.setSize(screenSize.width,screenSize.height);

Note: The interface cannot be exited after full-screen operation. To set up keyboard monitoring events, exit the program.

3. Partial keyboard monitoring

Press ESC key to exit the program

	frame.addKeyListener(new KeyAdapter(){
		public void keyPressed(KeyEvent e) {
			if(e.getKeyCode()==KeyEvent.VK_ESCAPE) {
				System.exit(0);
			}
		}
	});

Monitoring of other keys

	frame.addKeyListener(new KeyAdapter(){
		public void keyPressed(KeyEvent e) {
			if(e.getKeyCode()==KeyEvent.VK_SPACE) { //空格键的监听
				System.exit(0);    //按空格键后想完成的操作,比如页面跳转等,这里表示退出程序
			}
		}
	});

Global keyboard monitoring: press any key to exit

	Toolkit.getDefaultToolkit().addAWTEventListener((AWTEventListener) new AWTEventListener() {
		public void eventDispatched(AWTEvent event) {
			if (((KeyEvent) event).getID() == KeyEvent.KEY_PRESSED) {
				System.exit(0);
			}
			}
		}, AWTEvent.KEY_EVENT_MASK);

4. Insert pictures

	JLabel label1=new JLabel();
    ImageIcon i=new ImageIcon("./1.jpg");   //图片存储路径
	label1.setIcon(i);
	frame.add(label1);

5. Set the text font and size of the label and center it

JLabel label2=new JLabel("欢迎来到火车票购票系统",JLabel.CENTER); //居中显示
label2.setFont(new Font("",Font.BOLD,40));

6. Set the position of each component

	frame.setLayout(null);
	label2.setBounds(100,50,50, 50);//(100,50)是组件相对于窗体的位置,(50,50)是组件的大小

Make a simple login system based on the above content

package 购票系统;

import java.awt.*;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;

import javax.swing.*;

public class denglu {
JFrame frame=new JFrame("登录");
JLabel label1=new JLabel();
JLabel label2=new JLabel("欢迎来到火车票购票系统",JLabel.CENTER);
JLabel label3=new JLabel("用户登录",JLabel.CENTER);
JLabel label4=new JLabel("用户名",JLabel.CENTER);
JLabel label5=new JLabel("密码",JLabel.CENTER);
JTextField n1=new JTextField();
JTextField n2=new JTextField();
JButton button1=new JButton("登录");
JButton button2=new JButton("注册");
public denglu() {
	label2.setFont(new Font("",Font.BOLD,40));
	label3.setFont(new Font("",Font.BOLD,30));
	label4.setFont(new Font("",Font.BOLD,20));
	label5.setFont(new Font("",Font.BOLD,20));
	frame.setLayout(null);
	Dimension screenSize=Toolkit.getDefaultToolkit().getScreenSize();
	frame.setUndecorated(true);
	frame.setSize(screenSize.width, screenSize.height);
	ImageIcon i=new ImageIcon("./1.jpg");
	Image temp=i.getImage().getScaledInstance((int)screenSize.getWidth()/2,(int)screenSize.getHeight()-200, i.getImage().SCALE_DEFAULT);
	i=new ImageIcon(temp);
	label1.setIcon(i);
	label1.setBounds(20, 100, screenSize.width/2, screenSize.height-80);
	label2.setBounds(0,50,screenSize.width/2, 100);
	label3.setBounds(screenSize.width/2,250,screenSize.width/2, 100);
	label4.setBounds(screenSize.width/2,350,screenSize.width/4, 30);
	n1.setBounds(screenSize.width/2+screenSize.width/6,350,300, 30);
	label5.setBounds(screenSize.width/2,400,screenSize.width/4, 30);
	n2.setBounds(screenSize.width/2+screenSize.width/6,400,300, 30);
	button1.setBounds(screenSize.width/2+200,500,100, 30);
	button2.setBounds(screenSize.width/2+350,500,100, 30);
	frame.add(label1);
	frame.add(label2);
	frame.add(label3);
	frame.add(label4);
	frame.add(label5);
	frame.add(n1);
	frame.add(n2);
	frame.add(button1);
	frame.add(button2);
	frame.setResizable(false);
	frame.setLocationRelativeTo(null);
	frame.setVisible(true);
	frame.addKeyListener(new KeyAdapter(){
		public void keyPressed(KeyEvent e) {
			if(e.getKeyCode()==KeyEvent.VK_ESCAPE) {
				System.exit(0);
			}
		}
	});
}
public static void main(String[] args) {
	// TODO Auto-generated method stub
    new denglu();
}

}

The running results are as follows:

Guess you like

Origin blog.csdn.net/lxy20011125/article/details/128443524
Recommended