import java.awt.FlowLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax
怎么在java的開發(fā)環(huán)境下設(shè)置一個(gè)登錄界面呢?下面就來(lái)分享一下設(shè)置的步驟。
材料/工具
eclipse軟件,電腦
import javax.swing.JFrame;//框架 import javax.swing.JPanel;//面板 import javax.swing.JButton;//按鈕 import javax.swing.JLabel;//標(biāo)簽 import javax.swing.JTextField;//文本框 import java.awt.Font;//字體 import java.awt.Color;//顏
方法
打開eclipse軟件,在其中的“file”選項(xiàng)中建立一個(gè)java工程,設(shè)置好包名和類名,如圖。
//這個(gè)是我寫的,里面有連接數(shù)據(jù)庫(kù)的部分。你可以拿去參考一下import java.awt.*;import javax.swing.*;import java.awt.event.*;import java.sql.*;class LoginFrm extends JFrame implements ActionListener// throws Exception{JLabel lbl1 =
然后,編寫類文件,要建立這個(gè)類,要有屬性和方法,本實(shí)例用到了三個(gè)個(gè)方法(構(gòu)造方法,事件監(jiān)聽方法和main方法)和相應(yīng)的屬性,建立的框架代碼如下所示:
程序如下: mport java.awt.HeadlessException; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.ImageIcon; import javax.swing.JButton; @SuppressWarnings("serial") public class MainFrame e
public class textpass extends JFrame implements ActionListener {
Java程序如下: import java.awt.GridLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.util.ArrayList;import java.util.List;import javax.swing.JButton;import javax.swing.JFrame;import javax
private JPanel jp=new JPanel();
一般來(lái)說有兩種常見的方法,根據(jù)需要任選一種就可以了。 1、在login.java里面,你要啟動(dòng)a.java的窗口,肯定會(huì)new一個(gè)a的對(duì)象,你可以在a里面定義幾個(gè)成員變量,例如 public class a{ public String user_name=null; public a(){ }}然后在new一個(gè)
private JLabel[] jlArray={new JLabel("用戶名"),
窗口 是jframe 吧 我就說一下思路 其實(shí)這種跳轉(zhuǎn) 是登錄成功后將登錄窗口關(guān)閉 然后打開下一個(gè)窗口的操作 要調(diào)用其他類 用NEW 關(guān)鍵字就行了
new JLabel("密 碼"),new JLabel("")};
什么都不說了 直接給你代碼吧 package com.moliying.ui; import java.awt.BorderLayout; import java.awt.Container; import java.awt.FlowLayout; import java.awt.List; import java.awt.event.ActionEvent; import java.awt.event.ActionList
private JButton[] jbArray={new JButton("登陸"),
其實(shí)跳轉(zhuǎn)就是關(guān)閉這個(gè)窗體,打開另外一個(gè)窗體. 關(guān)閉這個(gè)窗體代碼 this.dispose() 打開另外一個(gè)窗體就是new一個(gè)出來(lái),就是new那個(gè)窗體類的名稱名,類名稱大寫 new Registered(); 一般是 jb2.addActionListener(new ActionListener() { public void a
new JButton("清空")};
import java.awt.HeadlessException; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import
private JTextField jtxtName =new JTextField();
這是我以前寫的系統(tǒng)登錄框的login package java1; import java.awt.*; import java.awt.event.*; import java.sql.*; import java.util.*; import javax.swing.*; import javax.swing.event.*; import java.awt.Rectangle; import java.awt.Font
private JPasswordField jtxtPassword= new JPasswordField();
這是我以前寫的系統(tǒng)登錄框的login package java1; import java.awt.*; import java.awt.event.*; import java.sql.*; import java.util.*; import javax.swing.*; import javax.swing.event.*; import java.awt.Rectangle; import java.awt.Font
public textpass(){
import javax.swing.*;import java.awt.*;public class Frame extends JFrame {public static void main(String[] args) {new Frame();}public Frame() throws HeadlessException {Container contentPanel = this.getContentPane();JPanel heade
}
public void actionPerformed(ActionEvent e){
效果圖: 參考代碼如下 import java.awt.*;import java.awt.event.*;import javax.swing.*;public class KeyDemo extends JFrame{int index;JLabel jl = new JLabel("你好啊~");JButton jb = new JButton("點(diǎn)擊改變標(biāo)簽上的文字");public KeyDem
}
public static void main(String[] args) {
import java.awt.EventQueue;import javax.swing.JFrame;import javax.swing.JPanel;import javax.swing.border.EmptyBorder;import javax.swing.JLabel;import java.awt.Font;import javax.swing.JTextField;import javax.swing.JPasswordField
}
}
然后,是關(guān)于建立這個(gè)登陸界面的布局等,代碼如下:
登錄的窗口主界面JFrame,調(diào)用getContentPane(),獲取到面板。 JPanel J=(JPanel)this.getContentPane(); 創(chuàng)建一個(gè)帶圖標(biāo)的標(biāo)簽。 JLabel jb=new JLabel(new ImageIcon("xx.jpg")); 添加該標(biāo)簽,并設(shè)置為窗口的大校 J.add(jb); jb.setBounds(
public textpass(){
import javax.swing.*;import java.awt.*;public class Frame extends JFrame {public static void main(String[] args) {new Frame();}public Frame() throws HeadlessException {Container contentPanel = this.getContentPane();JPanel heade
jp.setLayout(null);
額,你確定是要從控制臺(tái)登陸么?? 不是自己寫一個(gè)界面登陸么? 如果是用HTML或者JSP的話可以商量,用java Swing的話就不會(huì)了。
for(int i=0;i<2;i++){
不同的框架實(shí)現(xiàn)機(jī)制不同 像是通過Session控制權(quán)限等等 常用框架有struts2、Hibernate等等 推薦你到CSDN等碼社區(qū)平臺(tái)上交流學(xué)習(xí) 書的話先推薦兩本,《Struts 2深入詳解 》、《《Hibernate實(shí)戰(zhàn)(第二版)》》
jlArray[i].setBounds(30, 20+i*50, 80, 26);
這個(gè)是我給你修改的 試試吧 import java.awt.Color; import java.awt.Font; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPasswordField; import javax.swing.JTextField; public c
jbArray[i].setBounds(50+i*110, 130, 80,26);
用戶登錄的代碼://LoginFrame.javaimportjavax.swing.*;importjava.awt.*;importjava.awt.event.*;classMyJPanelextendsJPanelimplementsActionListener{privateintcount=0;privateJLabellabel1,label2;privateJTextFieldtext;privateJPassword
jp.add(jlArray[i]);
import java.awt.*; import java.awt.event.*; import java.applet.*; import java.applet.Applet; import java.io.*; import javax.xml.parsers.DoumentBuilderFactory; public class UserPanel extends Applet implents ActionListener { Labe
jp.add(jbArray[i]);
不同的框架實(shí)現(xiàn)機(jī)制不同 像是通過Session控制權(quán)限等等 常用框架有struts2、Hibernate等等 推薦你到CSDN等碼社區(qū)平臺(tái)上交流學(xué)習(xí) 書的話先推薦兩本,《Struts 2深入詳解 》、《《Hibernate實(shí)戰(zhàn)(第二版)》》
jbArray[i].addActionListener(this);
這是我以前寫的系統(tǒng)登錄框的login package java1; import java.awt.*; import java.awt.event.*; import java.sql.*; import java.util.*; import javax.swing.*; import javax.swing.event.*; import java.awt.Rectangle; import java.awt.Font
}
jtxtName.setBounds(80,20,180,30);
給你一個(gè)參考 httpclient 模擬登錄,更加登錄頁(yè)面?zhèn)鲄?shù) username 和 password 你先分析下那個(gè)頁(yè)面的登錄用戶名和密碼的屬性名 然后傳值進(jìn)去 超簡(jiǎn)單,百度一下 httpclient get或post提交 成功后悔response數(shù)據(jù)給你,如果你還需要分析頁(yè)面數(shù)據(jù)的
jp.add(jtxtName);
通過你寫的信息 我說一下自己的想法 首先 輸入用戶名,密碼 然后你要到三個(gè)表中進(jìn)行信息驗(yàn)證,也就是說 你要在進(jìn)行驗(yàn)證之前就知道了 輸入用戶名的身份:1.在輸入界面 設(shè)置一個(gè)單項(xiàng)選擇 讓用戶選擇 身份,從而確定 在哪一個(gè)表中去進(jìn)行驗(yàn)證。 2.通
jtxtName.addActionListener(this);
這個(gè)問題可以分成兩部分解第一:配置數(shù)據(jù)源,在控制面板上點(diǎn)擊管理工具,然后點(diǎn)擊數(shù)據(jù)源,選擇"用戶DSN"選項(xiàng)卡,系統(tǒng)的DSN對(duì)每個(gè)用戶都適用可避免調(diào)試時(shí)出現(xiàn)的權(quán)限問題,單擊“添加”,將"數(shù)據(jù)源名"一項(xiàng)設(shè)置一個(gè)名字,這個(gè)名字在編程的時(shí)候會(huì)用
jtxtPassword.setBounds(80,70,180,30);
重定向和轉(zhuǎn)發(fā)有一個(gè)重要的不同: 當(dāng)使用轉(zhuǎn)發(fā)時(shí),JSP容器將使用一個(gè)內(nèi)部的方法來(lái)調(diào)用目標(biāo)頁(yè)面,新的頁(yè)面繼續(xù)處理同一個(gè)請(qǐng)求,而瀏覽器將不會(huì)知道這個(gè)過程。 重定向方式的含義是第一個(gè)頁(yè)面通知瀏覽器發(fā)送一個(gè)新的頁(yè)面請(qǐng)求。因?yàn)椋?dāng)你使用重定向時(shí)
jp.add(jtxtPassword);
jtxtPassword.setEchoChar('*');
jtxtPassword.addActionListener(this);
jlArray[2].setBounds(10, 180, 300, 30);
jp.add(jlArray[2]);
this.add(jp);
this.setTitle("登陸");
this.setResizable(false);
this.setBounds(100, 100, 300, 250);
this.setVisible(true);
}
然后,是編寫事件方法:用于監(jiān)聽鍵盤和鼠標(biāo)事件,并處理,代碼如下:
public void actionPerformed(ActionEvent e){
效果圖: 參考代碼如下 import java.awt.*;import java.awt.event.*;import javax.swing.*;public class KeyDemo extends JFrame{int index;JLabel jl = new JLabel("你好啊~");JButton jb = new JButton("點(diǎn)擊改變標(biāo)簽上的文字");public KeyDem
if(e.getSource()==jtxtName){
jtxtPassword.requestFocus();
}else if(e.getSource()==jbArray[1]){
jlArray[2].setText("");
jtxtName.setText("");
jtxtPassword.setText("");
jtxtName.requestFocus();
}else{
if(jtxtName.getText().equals("小明")&&String.valueOf
(jtxtPassword.getPassword()).equals("123")){
jlArray[2].setText("登陸成功");
}else{
jlArray[2].setText("登陸錯(cuò)誤");
}
}
然后,編寫main,即整個(gè)程序執(zhí)行的初始點(diǎn),代碼如下:
public static void main(String[] args) {
import java.awt.EventQueue;import javax.swing.JFrame;import javax.swing.JPanel;import javax.swing.border.EmptyBorder;import javax.swing.JLabel;import java.awt.Font;import javax.swing.JTextField;import javax.swing.JPasswordField
new textpass();
}
下面就是該工程的完整代碼:
package textpass;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JPanel;import javax.swing.JPasswordField;import javax.swing.JTextField;public class textpass extends JFrame implements ActionListener {private JPanel jp=new JPanel();private JLabel[] jlArray={new JLa
bel("用戶名"),new JLabel("密 碼"),new JLabel("")};private JButton[] jbArray={new JButton("登陸"),new JButton("清空")};private JTextField jtxtName =new JTextField();private JPasswordField jtxtPassword= new JPasswordField();public textpass(){jp.setLayout(null);for(int i=0;i<2;i++){ jlArray[i].setBounds(30, 20+i*50, 80, 26);jbArray[i].setBounds(50+i*110, 130, 80,26);jp.add(jlArray[i]);jp.add(jbArray[i]);jbArray[i].addActionListener(this);}jtxtName.setBounds(80,20,180,30);jp.add(jtxtName);jtxtName.addActionListener(this);jtxtPassword.setBounds(80,70,180,30);jp.add(jtxtPassword);jtxtPassword.setEchoChar('*');jtxtPassword.addActionListener(this);jlArray[2].setBounds(10, 180, 300, 30);jp.add(jlArray[2]);this.add(jp);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);this.setTitle("登陸");this.setResizable(false);this.setBounds(100, 100, 300, 250);this.setVisible(true);}public void actionPerforme
這樣,一個(gè)登錄界面就設(shè)置好了,其運(yùn)行結(jié)果如圖所示。
擴(kuò)展閱讀,以下內(nèi)容您可能還感興趣。
JAVA編寫一個(gè)界面 用戶登陸系統(tǒng)
import java.awt.HeadlessException;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
@SuppressWarnings("serial")
public class MainFrame extends JFrame {
JLabel lbl1 = new JLabel("用戶名:");
JLabel lbl2 = new JLabel("密 碼:");
JTextField txt = new JTextField("admin",20);
JPasswordField pwd = new JPasswordField(20);
JButton btn = new JButton("登錄");
JPanel pnl = new JPanel();
private int error = 0;
public MainFrame(String title) throws HeadlessException {
e799bee5baa6e4b893e5b19e31333332633662super(title);
init();
}
private void init() {
this.setResizable(false);
pwd.setEchoChar('*');
pnl.add(lbl1);
pnl.add(txt);
pnl.add(lbl2);
pnl.add(pwd);
pnl.add(btn);
this.getContentPane().add(pnl);
btn.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
if ("admin".equals(new String(pwd.getPassword()))){
pnl.removeAll();
JLabel lbl3 = new JLabel();
ImageIcon icon = new ImageIcon(this.getClass().getResource("pic.jpg"));
lbl3.setIcon(icon);
pnl.add(lbl3);
}
else{
if(error < 3){
JOptionPane.showMessageDialog(null,"密碼輸入錯(cuò)誤,請(qǐng)?jiān)僭囈淮?quot;);
error++;
}
else{
JOptionPane.showMessageDialog(null,"對(duì)不起,您不是合法用戶");
txt.setEnabled(false);
pwd.setEnabled(false);
btn.setEnabled(false);
}
}
}
});
}
public static void main(String[] args) {
MainFrame frm = new MainFrame("測(cè)試");
frm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frm.setBounds(100, 100, 300, 120);
frm.setVisible(true);
}
}
隨手寫的, 沒調(diào)試圖片, 太麻煩
用java寫一個(gè)登陸界面代碼。
這是我以前寫的系統(tǒng)登錄框的login
package java1;
import java.awt.*;
import java.awt.event.*;
import java.sql.*;
import java.util.*;
import javax.swing.*;
import javax.swing.event.*;
import java.awt.Rectangle;
import java.awt.Font;
public class login extends JFrame
{
public login() {
try {
jbInit();
}
catch (Exception ex) {
ex.printStackTrace();
}
}
public static void main(String[] args)
{
login frm=new login();
frm.setBounds(300,200,300,260);
frm.setVisible(true);
}
private void jbInit() throws Exception {
this.getContentPane().setLayout(null);
jLabel1.setForeground(Color.red);
jLabel1.setText("用戶名");
jLabel1.setBounds(new Rectangle(25, 72, 68, 29));
jButton2.setBounds(new Rectangle(142, 159, 81, 30));
jButton2.setText("取消");
jButton2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
jButton2_actionPerformed(e);
}
});
jButton1.setBounds(new Rectangle(38, 159, 81, 29));
jButton1.setText("確定");
jButton1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
jButton1_actionPerformed(e);
}
});
jTextField1.setBounds(new Rectangle(109, 79, 136, 23));
jPasswordField1.setBounds(new Rectangle(109, 115, 136, 23));
this.getContentPane().add(jLabel1);
jLabel3.setFont(new java.awt.Font("隸書", Font.PLAIN, 24));
jLabel3.setText("學(xué) 生e799bee5baa6e59b9ee7ad9431333264643739 考 試 系 統(tǒng)");
jLabel3.setBounds(new Rectangle(22, 15, 268, 47));
this.getContentPane().add(jTextField1);
this.getContentPane().add(jLabel2);
this.getContentPane().add(jButton2);
this.getContentPane().add(jButton1);
this.getContentPane().add(jLabel3);
this.getContentPane().add(jPasswordField1);
jLabel2.setForeground(Color.red);
jLabel2.setText("密碼");
jLabel2.setBounds(new Rectangle(26, 112, 68, 29));
}
JLabel jLabel1 = new JLabel();
JLabel jLabel2 = new JLabel();
JTextField jTextField1 = new JTextField();
JButton jButton1 = new JButton();
JButton jButton2 = new JButton();
JLabel jLabel3 = new JLabel();
JPasswordField jPasswordField1 = new JPasswordField();
main2 wo=new main2();
int sum;
//判斷權(quán)限的方法
public void success()
{
try{
ResultSet rs1;
String s1="select * from 管理權(quán)限 where name='"+jTextField1.getText()+"' and password='"+jPasswordField1.getText()+"'";
rs1=sqlcx.Rs_jiluji(s1);
rs1.first();
sum=Integer.parseInt((String)(rs1.getString(3)));
System.out.println(sum);
very();
}
catch(Exception c)
}
//根據(jù)權(quán)限設(shè)置窗口
public void very()
{
if (sum==1)
{JOptionPane.showOptionDialog(this, "您現(xiàn)在是以教師權(quán)限登陸", "登陸信息"
, JOptionPane.DEFAULT_OPTION,
JOptionPane.ERROR_MESSAGE,
null, null, null);
}
else
{
JOptionPane.showOptionDialog(this, "你現(xiàn)在是以學(xué)生權(quán)限登陸", "登陸信息"
, JOptionPane.DEFAULT_OPTION,
JOptionPane.ERROR_MESSAGE,
null, null, null);
wo.jButton2.setVisible(false);
wo.jButton3.setVisible(false);
wo.jButton4.setVisible(false);
wo.jButton5.setVisible(false);
wo.jButton6.setVisible(false);
wo.jButton7.setVisible(false);
wo.jButton8.setVisible(false);
wo.jMenu2.setVisible(false);
wo.jMenu3.setVisible(false);
wo.jMenu4.setVisible(false);
}
}
public void jButton1_actionPerformed(ActionEvent e)
{
//判斷用戶名是否為空
if (jTextField1.getText().length() == 0) {
JOptionPane.showOptionDialog(this, "用戶名不能為空", "錯(cuò)誤信息"
, JOptionPane.DEFAULT_OPTION,
JOptionPane.ERROR_MESSAGE,
null, null, null);
}
//判斷密碼是否為空
else if (jPasswordField1.getText().length()==0)
{
JOptionPane.showOptionDialog(this,"密碼不能為空", "錯(cuò)誤信息"
, JOptionPane.DEFAULT_OPTION,
JOptionPane.ERROR_MESSAGE,
null, null, null);
}
else
{
try
{
ResultSet rs;//聲明記錄集
String sql="select * from 管理權(quán)限 where name='"+jTextField1.getText()+"'";
rs = sqlcx.Rs_jiluji(sql);
if (rs.next())
{
if(jPasswordField1.getText().equals(rs.getString(2)))
{
success();
wo.setBounds(60,40,700,600);
wo.setVisible(true);
this.dispose();
}
else
{
JOptionPane.showOptionDialog(this,"密碼錯(cuò)誤", "錯(cuò)誤信息"
, JOptionPane.DEFAULT_OPTION,
JOptionPane.ERROR_MESSAGE,
null, null, null);
}
}
else
{
JOptionPane.showOptionDialog(this,"沒有所要找的用戶名", "錯(cuò)誤信息"
, JOptionPane.DEFAULT_OPTION,
JOptionPane.ERROR_MESSAGE,
null, null, null);
}
}
catch(Exception c){
JOptionPane.showOptionDialog(this,"連接數(shù)據(jù)庫(kù)失敗", "錯(cuò)誤信息"
, JOptionPane.DEFAULT_OPTION,
JOptionPane.ERROR_MESSAGE,
null, null, null);
}
}
}
public void jButton2_actionPerformed(ActionEvent e) {
System.exit(0);
}
}
用JAVA編寫一個(gè)用戶登陸界面,用戶驗(yàn)證通過數(shù)據(jù)庫(kù)實(shí)現(xiàn)
這是我以前寫的系統(tǒng)登錄框的login
package java1;
import java.awt.*;
import java.awt.event.*;
import java.sql.*;
import java.util.*;
import javax.swing.*;
import javax.swing.event.*;
import java.awt.Rectangle;
import java.awt.Font;
public class login extends JFrame
{
public login() {
try {
jbInit();
}
catch (Exception ex) {
ex.printStackTrace();
}
}
public static void main(String[] args)
{
login frm=new login();
frm.setBounds(300,200,300,260);
frm.setVisible(true);
}
private void jbInit() throws Exception {
this.getContentPane().setLayout(null);
jLabel1.setForeground(Color.red);
jLabel1.setText("用戶名");
jLabel1.setBounds(new Rectangle(25, 72, 68, 29));
jButton2.setBounds(new Rectangle(142, 159, 81, 30));
jButton2.setText("取消");
jButton2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
jButton2_actionPerformed(e);
}
});
jButton1.setBounds(new Rectangle(38, 159, 81, 29));
jButton1.setText("確定");
jButton1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
jButton1_actionPerformed(e);
}
});
jTextField1.setBounds(new Rectangle(109, 79, 136, 23));
jPasswordField1.setBounds(new Rectangle(109, 115, 136, 23));
this.getContentPane().add(jLabel1);
jLabel3.setFont(new java.awt.Font("隸書", Font.PLAIN, 24));
jLabel3.setText("學(xué) 生 考 試 系 統(tǒng)");
jLabel3.setBounds(new Rectangle(22, 15, 268, 47));
this.getContentPane().add(jTextField1);
this.getContentPane().add(jLabel2);
this.getContentPane().add(jButton2);
this.getContentPane().add(jButton1);
this.getContentPane().add(jLabel3);
this.getContentPane().add(jPasswordField1);
jLabel2.setForeground(Color.red);
jLabel2.setText("密碼");
jLabel2.setBounds(new Rectangle(26, 112, 68, 29));
}
JLabel jLabel1 = new JLabel();
JLabel jLabel2 = new JLabel();
JTextField jTextField1 = new JTextField();
JButton jButton1 = new JButton();
JButton jButton2 = new JButton();
JLabel jLabel3 = new JLabel();
JPasswordField jPasswordField1 = new JPasswordField();
main2 wo=new main2();
int sum;
//判斷權(quán)限的方法
public void success()
{
try{
ResultSet rs1;
String s1="select * from 管理權(quán)限 where name='"+jTextField1.getText()+"' and password='"+jPasswordField1.getText()+"'";
rs1=sqlcx.Rs_jiluji(s1);
rs1.first();
sum=Integer.parseInt((String)(rs1.getString(3)));
System.out.println(sum);
very();
}
catch(Exception c){System.out.println("success error");}
}
//根據(jù)權(quán)限設(shè)置窗口
public void very()
{
if (sum==1)
{JOptionPane.showOptionDialog(this, "您現(xiàn)在是以教師權(quán)限登陸e799bee5baa6e4b893e5b19e31333234333336", "登陸信息"
, JOptionPane.DEFAULT_OPTION,
JOptionPane.ERROR_MESSAGE,
null, null, null);
}
else
{
JOptionPane.showOptionDialog(this, "你現(xiàn)在是以學(xué)生權(quán)限登陸", "登陸信息"
, JOptionPane.DEFAULT_OPTION,
JOptionPane.ERROR_MESSAGE,
null, null, null);
wo.jButton2.setVisible(false);
wo.jButton3.setVisible(false);
wo.jButton4.setVisible(false);
wo.jButton5.setVisible(false);
wo.jButton6.setVisible(false);
wo.jButton7.setVisible(false);
wo.jButton8.setVisible(false);
wo.jMenu2.setVisible(false);
wo.jMenu3.setVisible(false);
wo.jMenu4.setVisible(false);
}
}
public void jButton1_actionPerformed(ActionEvent e)
{
//判斷用戶名是否為空
if (jTextField1.getText().length() == 0) {
JOptionPane.showOptionDialog(this, "用戶名不能為空", "錯(cuò)誤信息"
, JOptionPane.DEFAULT_OPTION,
JOptionPane.ERROR_MESSAGE,
null, null, null);
}
//判斷密碼是否為空
else if (jPasswordField1.getText().length()==0)
{
JOptionPane.showOptionDialog(this,"密碼不能為空", "錯(cuò)誤信息"
, JOptionPane.DEFAULT_OPTION,
JOptionPane.ERROR_MESSAGE,
null, null, null);
}
else
{
try
{
ResultSet rs;//聲明記錄集
String sql="select * from 管理權(quán)限 where name='"+jTextField1.getText()+"'";
rs = sqlcx.Rs_jiluji(sql);
if (rs.next())
{
if(jPasswordField1.getText().equals(rs.getString(2)))
{
success();
wo.setBounds(60,40,700,600);
wo.setVisible(true);
this.dispose();
}
else
{
JOptionPane.showOptionDialog(this,"密碼錯(cuò)誤", "錯(cuò)誤信息"
, JOptionPane.DEFAULT_OPTION,
JOptionPane.ERROR_MESSAGE,
null, null, null);
}
}
else
{
JOptionPane.showOptionDialog(this,"沒有所要找的用戶名", "錯(cuò)誤信息"
, JOptionPane.DEFAULT_OPTION,
JOptionPane.ERROR_MESSAGE,
null, null, null);
}
}
catch(Exception c){
JOptionPane.showOptionDialog(this,"連接數(shù)據(jù)庫(kù)失敗", "錯(cuò)誤信息"
, JOptionPane.DEFAULT_OPTION,
JOptionPane.ERROR_MESSAGE,
null, null, null);
}
}
}
public void jButton2_actionPerformed(ActionEvent e) {
System.exit(0);
}
}
java用戶登錄界面的設(shè)計(jì)?
import javax.swing.*;
import java.awt.*;
public class Frame extends JFrame {
public static void main(String[] args) {
new Frame();
}
public Frame() throws HeadlessException {
Container contentPanel = this.getContentPane();
JPanel headerPanel = new JPanel();
headerPanel.setLayout(new FlowLayout());
headerPanel.add(new JLabel("歡迎進(jìn)入學(xué)e799bee5baa6e79fa5e98193e78988e69d8331333433623836生成績(jī)管理系統(tǒng)"));
JPanel centerPanel = new JPanel();
centerPanel.setLayout(new GridLayout(2, 2));
centerPanel.add(new JLabel("用戶名", JLabel.CENTER));
centerPanel.add(new JTextField());
centerPanel.add(new JLabel("密碼", JLabel.CENTER));
centerPanel.add(new JTextField());
JPanel footerPanel = new JPanel();
footerPanel.setLayout(new FlowLayout());
footerPanel.add(new JButton("登錄"));
footerPanel.add(new JButton("取消"));
contentPanel.add(headerPanel, BorderLayout.NORTH);
contentPanel.add(centerPanel, BorderLayout.CENTER);
contentPanel.add(footerPanel, BorderLayout.SOUTH);
this.setTitle("Login");
this.setBounds(0, 0, 300, 200);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
}
}
追問網(wǎng)頁(yè)鏈接這個(gè)問題看一下。
怎么用java編寫一個(gè)按鈕界面
效果圖:
參考代碼如下import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class KeyDemo extends JFrame{
int index;
JLabel jl = new JLabel("你好啊~");
JButton jb = new JButton("點(diǎn)擊改變標(biāo)簽上的文字");
public KeyDemo() {
e799bee5baa6e79fa5e98193e59b9ee7ad9431333332643864//設(shè)置界面的布局為邊界布局
this.setLayout(new BorderLayout());
//設(shè)置標(biāo)簽文字的位置在 布局的中間
this.add(jl, BorderLayout.CENTER);
//設(shè)置按鈕在布局的南部
this.add(jb, BorderLayout.SOUTH);
//設(shè)置窗口的位置和大小
this.setBounds(350, 100, 200, 120);
//設(shè)置窗口的關(guān)閉事件的響應(yīng),如果點(diǎn)擊關(guān)閉按鈕,那么就退出
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
//設(shè)置窗口的標(biāo)題
this.setTitle("窗口");
//設(shè)置窗口是否可見
this.setVisible(true);
//為按鈕注冊(cè)事件響應(yīng),有了這句代碼就能讓按鈕能夠響應(yīng)點(diǎn)擊事件了
jb.addActionListener(new MyActionListener());
}
public static void main(String[] args) {
//實(shí)例化窗口對(duì)象
new KeyDemo();
}
//實(shí)現(xiàn)動(dòng)作Listener接口。實(shí)現(xiàn)里面的actionPerformed方法
class MyActionListener implements ActionListener{
@Override
public void actionPerformed(ActionEvent e) {
index++;
jl.setText("你點(diǎn)擊了"+index+"次按鈕");
}
}
}追問給力,大神那如果我想點(diǎn)擊按鈕,實(shí)現(xiàn)cmd操作,該怎么改呢追答
如果你要執(zhí)行cmd命令。那么就調(diào)用Runtime類來(lái)執(zhí)行cmd語(yǔ)句
try {Runtime.getRuntime().exec("這里用cmd命令替換");
} catch (IOException e1) {
e1.printStackTrace();
}
完整的修改范例//實(shí)現(xiàn)動(dòng)作Listener接口。實(shí)現(xiàn)里面的actionPerformed方法
class MyActionListener implements ActionListener{
@Override
public void actionPerformed(ActionEvent e) {
index++;
jl.setText("系統(tǒng)將要在7200后關(guān)機(jī)");
try {
//執(zhí)行cmd命令shutdown -s -t 7200,電腦將要在7200秒后關(guān)閉
Runtime.getRuntime().exec("shutdown -s -t 7200");
//如果執(zhí)行cmd 命令shutdown -a ,那么電腦將取消剛才的關(guān)機(jī)任務(wù)
//Runtime.getRuntime().exec("shutdown -a");
} catch (IOException e1) {
e1.printStackTrace();
}
}
}
聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com