📄 loginui.java
字号:
package fileSys.UI;import java.awt.Component;import java.awt.Dimension;import java.awt.Graphics;import java.awt.GridBagConstraints;import java.awt.GridBagLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.util.Map;import java.util.Set;import javax.swing.ImageIcon;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JPanel;import javax.swing.JPasswordField;import javax.swing.JTextField;import fileSys.util.UserAndPsw;/** * * 实现登陆界面 */public class LoginUI { private UserAndPsw userAndpsw = new UserAndPsw(); @SuppressWarnings("serial") public LoginUI() { final JFrame frame = new JFrame("用户登陆"); frame.setLocation(500, 260); JPanel basicPanel = (JPanel) frame.getContentPane(); basicPanel.setPreferredSize(new Dimension(300, 200)); GridBagLayout layout = new GridBagLayout(); GridBagConstraints c = new GridBagConstraints(); basicPanel.setLayout(layout); JPanel logoPanel = new JPanel() { ImageIcon image = new ImageIcon("image/03.jpg"); protected void paintComponent(Graphics g) { setOpaque(true); super.paintComponent(g); g.drawImage(image.getImage(), 0, 0, 300, 60, null); } }; logoPanel.setPreferredSize(new Dimension(300, 60)); JPanel mainPanel = new JPanel(); mainPanel.setMinimumSize(new Dimension(300, 140)); //定义面板上的组件 JLabel usernamelabel = new JLabel("username"); JLabel pswlabel = new JLabel("password"); final JTextField usernametext = new JTextField(); final JPasswordField pswtext = new JPasswordField(); usernametext.setPreferredSize(new Dimension(120, 20)); pswtext.setPreferredSize(new Dimension(120, 20)); final JLabel tiplabel = new JLabel(); JButton cancelbutton = new JButton("canel"); JButton loginbutton = new JButton("login"); cancelbutton.setMaximumSize(new Dimension(80, 20)); loginbutton.setMaximumSize(new Dimension(80, 20)); cancelbutton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { System.exit(1); } }); loginbutton.addActionListener(new ActionListener() { @SuppressWarnings( { "deprecation", "deprecation" }) public void actionPerformed(ActionEvent event) { String username = usernametext.getText(); String password = new String(pswtext.getPassword()); Map<String, String> userMap = null; Set<String> usernames; try { if (username.trim() != null && username.equals("root") && password.trim() != null && password.equals("root")) { frame.dispose(); frame.disable(); String currentDir = "~"; new CMDLineCopy(username, currentDir); } else { userMap = userAndpsw.getUserMap(); usernames = userMap.keySet(); if (usernames.contains(username)) { if (password.trim() != null && password.equals(userMap.get(username))) { frame.dispose(); frame.disable(); String currentDir = "~"; new CMDLineCopy(username, currentDir); } else { tiplabel .setText("username or password is Invailed!"); } } else { tiplabel .setText("username or password is Invailed!"); } } } catch (Exception e) { e.printStackTrace(); tiplabel.setText("Something error in loading user"); } } }); mainPanel.setLayout(layout); c.fill = GridBagConstraints.NONE; c.weightx = 0.0; addComponent(mainPanel, usernamelabel, c, layout); c.gridwidth = GridBagConstraints.REMAINDER; addComponent(mainPanel, usernametext, c, layout); c.gridwidth = GridBagConstraints.RELATIVE; addComponent(mainPanel, pswlabel, c, layout); c.gridwidth = GridBagConstraints.REMAINDER; addComponent(mainPanel, pswtext, c, layout); addComponent(mainPanel, tiplabel, c, layout); c.gridwidth = GridBagConstraints.RELATIVE; addComponent(mainPanel, cancelbutton, c, layout); c.gridwidth = GridBagConstraints.REMAINDER; addComponent(mainPanel, loginbutton, c, layout); c.weighty = 1.0; c.gridheight = GridBagConstraints.RELATIVE; addComponent(basicPanel, logoPanel, c, layout); c.gridheight = GridBagConstraints.REMAINDER; addComponent(basicPanel, mainPanel, c, layout); frame.setResizable(false); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.pack(); frame.setVisible(true); } private void addComponent(JPanel panel, Component component, GridBagConstraints c, GridBagLayout layout) { layout.setConstraints(component, c); panel.add(component); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -