怎麼採用java設置一個登陸界面
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的開發環境下設置一個登錄界面呢?下面就來分享一下設置的步驟。
材料/工具
eclipse軟件,電腦
import javax.swing.JFrame;//框架 import javax.swing.JPanel;//面板 import javax.swing.JButton;//按鈕 import javax.swing.JLabel;//標籤 import javax.swing.JTextField;//文本框 import java.awt.Font;//字體 import java.awt.Color;//顏
方法
打開eclipse軟件,在其中的“file”選項中建立一個java工程,設置好包名和類名,如圖。
//這個是我寫的,裏面有連接數據庫的部分。你可以拿去參考一下import java.awt.*;import javax.swing.*;import java.awt.event.*;import java.sql.*;class LoginFrm extends JFrame implements ActionListener// throws Exception{JLabel lbl1 =
然後,編寫類文件,要建立這個類,要有屬性和方法,本實例用到了三個個方法(構造方法,事件監聽方法和main方法)和相應的屬性,建立的框架代碼如下所示:
程序如下: 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();
一般來説有兩種常見的方法,根據需要任選一種就可以了。 1、在login.java裏面,你要啟動a.java的窗口,肯定會new一個a的對象,你可以在a裏面定義幾個成員變量,例如 public class a{ public String user_name=null; public a(){ }}然後在new一個
private JLabel[] jlArray={new JLabel("用户名"),
窗口 是jframe 吧 我就説一下思路 其實這種跳轉 是登錄成功後將登錄窗口關閉 然後打開下一個窗口的操作 要調用其他類 用NEW 關鍵字就行了
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("登陸"),
其實跳轉就是關閉這個窗體,打開另外一個窗體. 關閉這個窗體代碼 this.dispose() 打開另外一個窗體就是new一個出來,就是new那個窗體類的名稱名,類名稱大寫 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();
這是我以前寫的系統登錄框的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();
這是我以前寫的系統登錄框的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("點擊改變標籤上的文字");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
}
}
然後,是關於建立這個登陸界面的佈局等,代碼如下:
登錄的窗口主界面JFrame,調用getContentPane(),獲取到面板。 JPanel J=(JPanel)this.getContentPane(); 創建一個帶圖標的標籤。 JLabel jb=new JLabel(new ImageIcon("xx.jpg")); 添加該標籤,並設置為窗口的大校 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);
額,你確定是要從控制枱登陸麼?? 不是自己寫一個界面登陸麼? 如果是用HTML或者JSP的話可以商量,用java Swing的話就不會了。
for(int i=0;i<2;i++){
不同的框架實現機制不同 像是通過Session控制權限等等 常用框架有struts2、Hibernate等等 推薦你到CSDN等碼社區平台上交流學習 書的話先推薦兩本,《Struts 2深入詳解 》、《《Hibernate實戰(第二版)》》
jlArray[i].setBounds(30, 20+i*50, 80, 26);
這個是我給你修改的 試試吧 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]);
不同的框架實現機制不同 像是通過Session控制權限等等 常用框架有struts2、Hibernate等等 推薦你到CSDN等碼社區平台上交流學習 書的話先推薦兩本,《Struts 2深入詳解 》、《《Hibernate實戰(第二版)》》
jbArray[i].addActionListener(this);
這是我以前寫的系統登錄框的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);
給你一個參考 httpclient 模擬登錄,更加登錄頁面傳參數 username 和 password 你先分析下那個頁面的登錄用户名和密碼的屬性名 然後傳值進去 超簡單,百度一下 httpclient get或post提交 成功後悔response數據給你,如果你還需要分析頁面數據的
jp.add(jtxtName);
通過你寫的信息 我説一下自己的想法 首先 輸入用户名,密碼 然後你要到三個表中進行信息驗證,也就是説 你要在進行驗證之前就知道了 輸入用户名的身份:1.在輸入界面 設置一個單項選擇 讓用户選擇 身份,從而確定 在哪一個表中去進行驗證。 2.通
jtxtName.addActionListener(this);
這個問題可以分成兩部分解第一:配置數據源,在控制面板上點擊管理工具,然後點擊數據源,選擇"用户DSN"選項卡,系統的DSN對每個用户都適用可避免調試時出現的權限問題,單擊“添加”,將"數據源名"一項設置一個名字,這個名字在編程的時候會用
jtxtPassword.setBounds(80,70,180,30);
重定向和轉發有一個重要的不同: 當使用轉發時,JSP容器將使用一個內部的方法來調用目標頁面,新的頁面繼續處理同一個請求,而瀏覽器將不會知道這個過程。 重定向方式的含義是第一個頁面通知瀏覽器發送一個新的頁面請求。因為,當你使用重定向時
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);
}
然後,是編寫事件方法:用於監聽鍵盤和鼠標事件,並處理,代碼如下:
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("點擊改變標籤上的文字");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("登陸錯誤");
}
}
然後,編寫main,即整個程序執行的初始點,代碼如下:
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
這樣,一個登錄界面就設置好了,其運行結果如圖所示。
擴展閲讀,以下內容您可能還感興趣。
JAVA編寫一個界面 用户登陸系統
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,"密碼輸入錯誤,請再試一次");
error++;
}
else{
JOptionPane.showMessageDialog(null,"對不起,您不是合法用户");
txt.setEnabled(false);
pwd.setEnabled(false);
btn.setEnabled(false);
}
}
}
});
}
public static void main(String[] args) {
MainFrame frm = new MainFrame("測試");
frm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frm.setBounds(100, 100, 300, 120);
frm.setVisible(true);
}
}
隨手寫的, 沒調試圖片, 太麻煩
用java寫一個登陸界面代碼。
這是我以前寫的系統登錄框的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("學 生e799bee5baa6e59b9ee7ad9431333264643739 考 試 系 統");
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;
//判斷權限的方法
public void success()
{
try{
ResultSet rs1;
String s1="select * from 管理權限 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)
}
//根據權限設置窗口
public void very()
{
if (sum==1)
{JOptionPane.showOptionDialog(this, "您現在是以教師權限登陸", "登陸信息"
, JOptionPane.DEFAULT_OPTION,
JOptionPane.ERROR_MESSAGE,
null, null, null);
}
else
{
JOptionPane.showOptionDialog(this, "你現在是以學生權限登陸", "登陸信息"
, 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, "用户名不能為空", "錯誤信息"
, JOptionPane.DEFAULT_OPTION,
JOptionPane.ERROR_MESSAGE,
null, null, null);
}
//判斷密碼是否為空
else if (jPasswordField1.getText().length()==0)
{
JOptionPane.showOptionDialog(this,"密碼不能為空", "錯誤信息"
, JOptionPane.DEFAULT_OPTION,
JOptionPane.ERROR_MESSAGE,
null, null, null);
}
else
{
try
{
ResultSet rs;//聲明記錄集
String sql="select * from 管理權限 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,"密碼錯誤", "錯誤信息"
, JOptionPane.DEFAULT_OPTION,
JOptionPane.ERROR_MESSAGE,
null, null, null);
}
}
else
{
JOptionPane.showOptionDialog(this,"沒有所要找的用户名", "錯誤信息"
, JOptionPane.DEFAULT_OPTION,
JOptionPane.ERROR_MESSAGE,
null, null, null);
}
}
catch(Exception c){
JOptionPane.showOptionDialog(this,"連接數據庫失敗", "錯誤信息"
, JOptionPane.DEFAULT_OPTION,
JOptionPane.ERROR_MESSAGE,
null, null, null);
}
}
}
public void jButton2_actionPerformed(ActionEvent e) {
System.exit(0);
}
}
用JAVA編寫一個用户登陸界面,用户驗證通過數據庫實現
這是我以前寫的系統登錄框的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("學 生 考 試 系 統");
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;
//判斷權限的方法
public void success()
{
try{
ResultSet rs1;
String s1="select * from 管理權限 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");}
}
//根據權限設置窗口
public void very()
{
if (sum==1)
{JOptionPane.showOptionDialog(this, "您現在是以教師權限登陸e799bee5baa6e4b893e5b19e31333234333336", "登陸信息"
, JOptionPane.DEFAULT_OPTION,
JOptionPane.ERROR_MESSAGE,
null, null, null);
}
else
{
JOptionPane.showOptionDialog(this, "你現在是以學生權限登陸", "登陸信息"
, 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, "用户名不能為空", "錯誤信息"
, JOptionPane.DEFAULT_OPTION,
JOptionPane.ERROR_MESSAGE,
null, null, null);
}
//判斷密碼是否為空
else if (jPasswordField1.getText().length()==0)
{
JOptionPane.showOptionDialog(this,"密碼不能為空", "錯誤信息"
, JOptionPane.DEFAULT_OPTION,
JOptionPane.ERROR_MESSAGE,
null, null, null);
}
else
{
try
{
ResultSet rs;//聲明記錄集
String sql="select * from 管理權限 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,"密碼錯誤", "錯誤信息"
, JOptionPane.DEFAULT_OPTION,
JOptionPane.ERROR_MESSAGE,
null, null, null);
}
}
else
{
JOptionPane.showOptionDialog(this,"沒有所要找的用户名", "錯誤信息"
, JOptionPane.DEFAULT_OPTION,
JOptionPane.ERROR_MESSAGE,
null, null, null);
}
}
catch(Exception c){
JOptionPane.showOptionDialog(this,"連接數據庫失敗", "錯誤信息"
, JOptionPane.DEFAULT_OPTION,
JOptionPane.ERROR_MESSAGE,
null, null, null);
}
}
}
public void jButton2_actionPerformed(ActionEvent e) {
System.exit(0);
}
}
java用户登錄界面的設計?
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("歡迎進入學e799bee5baa6e79fa5e98193e78988e69d8331333433623836生成績管理系統"));
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);
}
}
追問網頁鏈接這個問題看一下。
怎麼用java編寫一個按鈕界面
效果圖:
參考代碼如下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("點擊改變標籤上的文字");
public KeyDemo() {
e799bee5baa6e79fa5e98193e59b9ee7ad9431333332643864//設置界面的佈局為邊界佈局
this.setLayout(new BorderLayout());
//設置標籤文字的位置在 佈局的中間
this.add(jl, BorderLayout.CENTER);
//設置按鈕在佈局的南部
this.add(jb, BorderLayout.SOUTH);
//設置窗口的位置和大小
this.setBounds(350, 100, 200, 120);
//設置窗口的關閉事件的響應,如果點擊關閉按鈕,那麼就退出
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
//設置窗口的標題
this.setTitle("窗口");
//設置窗口是否可見
this.setVisible(true);
//為按鈕註冊事件響應,有了這句代碼就能讓按鈕能夠響應點擊事件了
jb.addActionListener(new MyActionListener());
}
public static void main(String[] args) {
//實例化窗口對象
new KeyDemo();
}
//實現動作Listener接口。實現裏面的actionPerformed方法
class MyActionListener implements ActionListener{
@Override
public void actionPerformed(ActionEvent e) {
index++;
jl.setText("你點擊了"+index+"次按鈕");
}
}
}追問給力,大神那如果我想點擊按鈕,實現cmd操作,該怎麼改呢追答
如果你要執行cmd命令。那麼就調用Runtime類來執行cmd語句
try {Runtime.getRuntime().exec("這裏用cmd命令替換");
} catch (IOException e1) {
e1.printStackTrace();
}
完整的修改範例//實現動作Listener接口。實現裏面的actionPerformed方法
class MyActionListener implements ActionListener{
@Override
public void actionPerformed(ActionEvent e) {
index++;
jl.setText("系統將要在7200後關機");
try {
//執行cmd命令shutdown -s -t 7200,電腦將要在7200秒後關閉
Runtime.getRuntime().exec("shutdown -s -t 7200");
//如果執行cmd 命令shutdown -a ,那麼電腦將取消剛才的關機任務
//Runtime.getRuntime().exec("shutdown -a");
} catch (IOException e1) {
e1.printStackTrace();
}
}
}