📄 loginframe.java
字号:
import java.awt.*;
import java.sql.*;
import java.awt.event.*;
import javax.swing.*;
public class LoginFrame extends JFrame {
JPanel contentPane;
JLabel jLabelLogin = new JLabel();
JLabel jLabelPassword = new JLabel();
TextField textFieldPass = new TextField();
JButton jButtonOk = new JButton();
JButton jButtonCan = new JButton();
TextField textFieldLog = new TextField();
JLabel jLabel1 = new JLabel();
/**Construct the frame*/
public LoginFrame() {
enableEvents(AWTEvent.WINDOW_EVENT_MASK);
try {
jbInit();
}
catch(Exception e) {
e.printStackTrace();
}
}
/**Component initialization*/
private void jbInit() throws Exception {
jLabelLogin.setOpaque(true);
jLabelLogin.setHorizontalAlignment(SwingConstants.RIGHT);
jLabelLogin.setText("Login ");
jLabelLogin.setBounds(new Rectangle(28, 34, 65, 25));
jLabelLogin.setBackground(new java.awt.Color(204, 204, 255));
jLabelLogin.setForeground(new java.awt.Color(51, 0, 255));
//setIconImage(Toolkit.getDefaultToolkit().createImage(Loginframe.class.getResource("[Your Icon]")));
contentPane = (JPanel) this.getContentPane();
contentPane.setLayout(null);
this.setResizable(false);
this.setSize(new Dimension(400, 300));
this.setTitle("User Authentication");
this.setVisible(true);
setSize(350,200);
jLabelPassword.setOpaque(true);
jLabelPassword.setHorizontalAlignment(SwingConstants.RIGHT);
jLabelPassword.setText("Password ");
jLabelPassword.setBounds(new Rectangle(15, 76, 77, 22));
jLabelPassword.setBackground(new java.awt.Color(204, 204, 255));
jLabelPassword.setForeground(new java.awt.Color(51, 0, 255));
textFieldPass.setBounds(new Rectangle(101, 75, 172, 21));
jButtonOk.setBorder(BorderFactory.createEtchedBorder());
jButtonOk.setMargin(new Insets(10, 14, 10, 14));
jButtonOk.setText("Ok");
jButtonOk.setBounds(new Rectangle(101, 114, 77, 25));
jButtonOk.setBackground(new java.awt.Color(204, 204, 255));
jButtonOk.setForeground(new java.awt.Color(51, 0, 255));
jButtonOk.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(ActionEvent e) {
jButtonOk_actionPerformed(e);
}
});
jButtonCan.setBorder(BorderFactory.createEtchedBorder());
jButtonCan.setText("Cancel");
jButtonCan.setBounds(new Rectangle(197, 114, 74, 26));
jButtonCan.setBackground(new java.awt.Color(204, 204, 255));
jButtonCan.setForeground(new java.awt.Color(51, 0, 255));
jButtonCan.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(ActionEvent e) {
jButtonCan_actionPerformed(e);
}
});
textFieldLog.setBounds(new Rectangle(101, 33, 173, 22));
jLabel1.setForeground(new Color(223, 66, 0));
jLabel1.setHorizontalAlignment(SwingConstants.CENTER);
jLabel1.setHorizontalTextPosition(SwingConstants.CENTER);
jLabel1.setBounds(new Rectangle(61, 6, 265, 21));
contentPane.setBackground(new java.awt.Color(204, 204, 255));
contentPane.add(jLabelLogin, null);
contentPane.add(textFieldLog, null);
contentPane.add(jLabelPassword, null);
contentPane.add(textFieldPass, null);
contentPane.add(jButtonOk, null);
contentPane.add(jButtonCan, null);
contentPane.add(jLabel1, null);
textFieldPass.setEchoChar('*');
}
/**Overridden so we can exit when window is closed*/
protected void processWindowEvent(WindowEvent e) {
super.processWindowEvent(e);
if (e.getID() == WindowEvent.WINDOW_CLOSING) {
this.dispose();
}
}
void jButtonOk_actionPerformed(ActionEvent e)
{
// databse handling code here:
String id=textFieldLog.getText();
String password=textFieldPass.getText();
java.sql.Connection conn=null;
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
conn=java.sql.DriverManager.getConnection("jdbc:odbc:search","","");
java.sql.PreparedStatement ps=conn.prepareStatement("select id,password from Logintable where id=? and password=?");
ps.setString(1,id);
ps.setString(2,password);
java.sql.ResultSet rs=ps.executeQuery();
if(rs.next())
{
FrameMain.jMenuItemStop.setEnabled(false);
FrameMain.jMenuItemRun.setEnabled(true);
FrameMain.jMenuItemStopi.setEnabled(false);
FrameMain.jMenuItemRuni.setEnabled(true);
FrameMain.jMenuItemChangePass.setEnabled(true);
dispose();
System.out.println("valid");
}
else
{
jLabel1.setText("LOGIN FAILED!");
textFieldLog.setText("");
textFieldPass.setText("");
textFieldLog.requestFocus();
FrameMain.jMenuItemRun.setEnabled(false); //****write true for false
FrameMain.jMenuItemRuni.setEnabled(false);//*****write false for true
FrameMain.jMenuItemChangePass.setEnabled(false);
}
}catch(Exception ae){System.out.println(ae.getMessage());}
finally{
if(conn!=null)
{
try{
conn.close();
}catch(Exception e1){System.out.println(e1.getMessage());}
}}
}
void jButtonCan_actionPerformed(ActionEvent be) {
dispose();
}
/*public static void main(String args[])
{
new LoginFrame();
}
*/
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -