用java怎樣編寫登錄頁面(用java編寫一個登陸界面)

本文目錄一覽:

登陸界面的java代碼怎麼寫?

概述

具體框架使用jframe,文本框組件:JTextField;密碼框組件:JPasswordField;標籤組件:JLabel;複選框組件:JCheckBox;單選框組件:JRadioButton;按鈕組件JButton。

登錄界面:

代碼實例

import javax.swing.*;

import java.awt.*;   //導入必要的包

public class denglu extends JFrame{

JTextField jTextField ;//定義文本框組件

JPasswordField jPasswordField;//定義密碼框組件

JLabel jLabel1,jLabel2;

JPanel jp1,jp2,jp3;

JButton jb1,jb2; //創建按鈕

public denglu(){

jTextField = new JTextField(12);

jPasswordField = new JPasswordField(13);

jLabel1 = new JLabel(“用戶名”);

jLabel2 = new JLabel(“密碼”);

jb1 = new JButton(“確認”);

jb2 = new JButton(“取消”);

jp1 = new JPanel();

jp2 = new JPanel();

jp3 = new JPanel();

//設置布局

this.setLayout(new GridLayout(3,1));

jp1.add(jLabel1);

jp1.add(jTextField);//第一塊面板添加用戶名和文本框

jp2.add(jLabel2);

jp2.add(jPasswordField);//第二塊面板添加密碼和密碼輸入框

jp3.add(jb1);

jp3.add(jb2); //第三塊面板添加確認和取消

//        jp3.setLayout(new FlowLayout());  //因為JPanel默認布局方式為FlowLayout,所以可以註銷這段代碼.

this.add(jp1);

this.add(jp2);

this.add(jp3);  //將三塊面板添加到登陸框上面

//設置顯示

this.setSize(300, 200);

//this.pack();

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

this.setVisible(true);

this.setTitle(“登陸”);

}

public static void main(String[] args){

new denglu();

}

}

拓展內容

java swing包

Swing 是一個為Java設計的GUI工具包。

Swing是JAVA基礎類的一部分。

Swing包括了圖形用戶界面(GUI)器件如:文本框,按鈕,分隔窗格和表。

Swing提供許多比AWT更好的屏幕顯示元素。它們用純Java寫成,所以同Java本身一樣可以跨平台運行,這一點不像AWT。它們是JFC的一部分。它們支持可更換的面板和主題(各種操作系統默認的特有主題),然而不是真的使用原生平台提供的設備,而是僅僅在表面上模仿它們。這意味著你可以在任意平台上使用JAVA支持的任意麵板。輕量級組件的缺點則是執行速度較慢,優點就是可以在所有平台上採用統一的行為。

概念解析:

JFrame – java的GUI程序的基本思路是以JFrame為基礎,它是屏幕上window的對象,能夠最大化、最小化、關閉。

JPanel – Java圖形用戶界面(GUI)工具包swing中的面板容器類,包含在javax.swing 包中,可以進行嵌套,功能是對窗體中具有相同邏輯功能的組件進行組合,是一種輕量級容器,可以加入到JFrame窗體中。。

JLabel – JLabel 對象可以顯示文本、圖像或同時顯示二者。可以通過設置垂直和水平對齊方式,指定標籤顯示區中標籤內容在何處對齊。默認情況下,標籤在其顯示區內垂直居中對齊。默認情況下,只顯示文本的標籤是開始邊對齊;而只顯示圖像的標籤則水平居中對齊。

JTextField –一個輕量級組件,它允許編輯單行文本。

JPasswordField – 允許我們輸入了一行字像輸入框,但隱藏星號(*) 或點創建密碼(密碼)

JButton – JButton 類的實例。用於創建按鈕類似實例中的 “Login”。

如何用JAVA編寫一個簡單用戶登陸界面?

什麼都不說了 直接給你代碼吧

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.ActionListener;

import java.io.BufferedWriter;

import java.io.FileOutputStream;

import java.io.OutputStreamWriter;

import java.util.ArrayList;

import java.util.Arrays;

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 Login {

private JFrame frame = new JFrame(“登錄”);

private Container c = frame.getContentPane();

private JTextField username = new JTextField();

private JPasswordField password = new JPasswordField();

private JButton ok = new JButton(“確定”);

private JButton cancel = new JButton(“取消”);

public Login() {

frame.setSize(300, 200);

frame.setBounds(450, 300, 300, 200);

c.setLayout(new BorderLayout());

initFrame();

frame.setVisible(true);

}

private void initFrame() {

// 頂部

JPanel titlePanel = new JPanel();

titlePanel.setLayout(new FlowLayout());

titlePanel.add(new JLabel(“系統管理員登錄”));

c.add(titlePanel, “North”);

// 中部表單

JPanel fieldPanel = new JPanel();

fieldPanel.setLayout(null);

JLabel a1 = new JLabel(“用戶名:”);

a1.setBounds(50, 20, 50, 20);

JLabel a2 = new JLabel(“密 碼:”);

a2.setBounds(50, 60, 50, 20);

fieldPanel.add(a1);

fieldPanel.add(a2);

username.setBounds(110, 20, 120, 20);

password.setBounds(110, 60, 120, 20);

fieldPanel.add(username);

fieldPanel.add(password);

c.add(fieldPanel, “Center”);

// 底部按鈕

JPanel buttonPanel = new JPanel();

buttonPanel.setLayout(new FlowLayout());

buttonPanel.add(ok);

buttonPanel.add(cancel);

c.add(buttonPanel, “South”);

ok.addActionListener(new ActionListener() {

@Override

public void actionPerformed(ActionEvent e) {

System.out.println(username.getText().toString());

}

});

cancel.addActionListener(new ActionListener() {

@Override

public void actionPerformed(ActionEvent e) {

frame.setVisible(false);

}

});

}

public static void main(String[] args) {

// new Login();

String ss = “abbabbbaabbbccba”;

System.out.println(ss.split(“b”).length);

}

}

用java實現QQ登錄界面怎麼寫

package ch10;

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

//定義該類繼承自JFrame,實現ActionListener介面

public class LoginTest extends JFrame implements ActionListener

{

//創建JPanel對象

private JPanel jp=new JPanel();

//創建3個標並加入數組

JLabel name = new JLabel(“請輸入用戶名”);

JLabel password = new JLabel(“請輸入密碼”);

JLabel show = new JLabel(“”);

private JLabel[] jl={name,password,show};

//創建登陸和重置按扭並加入數組

JButton login = new JButton(“登陸”);

JButton reset = new JButton(“重置”);

private JButton[] jb={login,reset};

//創建文本框以及密碼框

private JTextField jName=new JTextField();

private JPasswordField jPassword =new JPasswordField();

public LoginTest()

{

//設置布局管理器為空布局,這裡自己擺放按鈕、標籤和文本框

jp.setLayout(null);

for(int i=0;i2;i++)

{

//設置標籤和按扭的位置與大小

jl[i].setBounds(30,20+40*i,180,20);

jb[i].setBounds(30+110*i,100,80,20);

//添加標籤和按扭到JPanel容器中

jp.add(jl[i]);

jp.add(jb[i]);

//為2個按鈕註冊動作事件監聽器

jb[i].addActionListener(this);

}

//設置文本框的位置和大小,注意滿足美觀並足夠用戶名的長度

jName.setBounds(130,15,100,20);

//添加文本框到JPanel容器中

jp.add(jName);

//為文本框註冊動作事件監聽器

jName.addActionListener(this);

//設置密碼框的位置和大小,注意滿足美觀和足夠密碼的長度

jPassword.setBounds(130,60,100,20);

//添加密碼框到JPanel容器中

jp.add(jPassword);

//設置密碼框中的回顯字元,這裡設置美元符號

jPassword.setEchoChar(‘$’);

//為密碼框註冊動作事件監聽器

jPassword.addActionListener(this);

//設置用於顯示登陸狀態的標籤大小位置,並將其添加進JPanel容器

jl[2].setBounds(10,180,270,20);

jp.add(jl[2]);

//添加JPanel容器到窗體中

this.add(jp);

//設置窗體的標題、位置、大小、可見性及關閉動作

this.setTitle(“登陸窗口”);

this.setBounds(200,200,270,250);

this.setVisible(true);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

//實現動作監聽器介面中的方法actionPerformed

public void actionPerformed(ActionEvent e)

{

//如果事件源為文本框

if(e.getSource()==jName)

{

//切換輸入焦點到密碼框

jPassword.requestFocus();

}

//如果事件源為重置按扭

else if(e.getSource()==jb[1])

{

//清空姓名文本框、密碼框和show標籤中的所有信息

jl[2].setText(“”);

jName.setText(“”);

jPassword.setText(“”);

//讓輸入焦點回到文本框

jName.requestFocus();

}

//如果事件源為登陸按鈕,則判斷登錄名和密碼是否正確

else

{

//判斷用戶名和密碼是否匹配

if(jName.getText().equals(“lixiangguo”)

String.valueOf(jPassword.getPassword()).equals(“19801001”))

{

jl[2].setText(“登陸成功,歡迎您的到來!”);

}

else

{

jl[2].setText(“對不起,您的用戶名或密碼錯誤!”);

}

}

}

public static void main(String[] args)

{

//創建LoginTest窗體對象

new LoginTest();

}

}

這個簡單點的

用java程序編寫一個簡單的登錄界面怎麼寫?

程序如下:

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 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 {

super(title);

init();

}

private void init() {

this.setResizable(false);

pwd.setEchoChar(‘*’);

pnl.add(lbl1);

pnl.add(txt);

btn.addActionListener(new ActionListener() {

@Override

public void actionPerformed(ActionEvent e) {

if (“admin”.equal花憨羔窖薏忌割媳公顱s(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);

}

}

編程的注意事項:

1、Java是一門面向對象編程語言,不僅吸收了C++語言的各種優點,還摒棄了C++里難以理解的多繼承、指針等概念,因此Java語言具有功能強大和簡單易用兩個特徵。Java語言作為靜態面向對象編程語言的代表,極好地實現了面向對象理論,允許程序員以優雅的思維方式進行複雜的編程。

2、 Java具有簡單性、面向對象、分散式、健壯性、安全性、平台獨立與可移植性、多線程、動態性等特點。Java可以編寫桌面應用程序、Web應用程序、分散式系統和嵌入式系統應用程序等。

3、2006年11月13日,Java技術的發明者Sun公司宣布,將Java技術作為免費軟體對外發布。Sun公司正式發布的有關Java平台標準版的第一批源代碼,以及Java迷你版的可執行源代碼。從2007年3月起,全世界所有的開發人員均可對Java源代碼進行修改。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/297712.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-28 12:16
下一篇 2024-12-28 12:16

相關推薦

  • java client.getacsresponse 編譯報錯解決方法

    java client.getacsresponse 編譯報錯是Java編程過程中常見的錯誤,常見的原因是代碼的語法錯誤、類庫依賴問題和編譯環境的配置問題。下面將從多個方面進行分析…

    編程 2025-04-29
  • Java JsonPath 效率優化指南

    本篇文章將深入探討Java JsonPath的效率問題,並提供一些優化方案。 一、JsonPath 簡介 JsonPath是一個可用於從JSON數據中獲取信息的庫。它提供了一種DS…

    編程 2025-04-29
  • Java Bean載入過程

    Java Bean載入過程涉及到類載入器、反射機制和Java虛擬機的執行過程。在本文中,將從這三個方面詳細闡述Java Bean載入的過程。 一、類載入器 類載入器是Java虛擬機…

    編程 2025-04-29
  • Java騰訊雲音視頻對接

    本文旨在從多個方面詳細闡述Java騰訊雲音視頻對接,提供完整的代碼示例。 一、騰訊雲音視頻介紹 騰訊雲音視頻服務(Cloud Tencent Real-Time Communica…

    編程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介紹

    本文將詳細介紹Java Milvus SearchParam withoutFields的相關知識和用法。 一、什麼是Java Milvus SearchParam without…

    編程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java語言中的一個版本,於2014年3月18日發布。本文將從多個方面對Java 8中某一周的周一進行詳細的闡述。 一、數組處理 Java 8新特性之一是Stream…

    編程 2025-04-29
  • Java判斷字元串是否存在多個

    本文將從以下幾個方面詳細闡述如何使用Java判斷一個字元串中是否存在多個指定字元: 一、字元串遍歷 字元串是Java編程中非常重要的一種數據類型。要判斷字元串中是否存在多個指定字元…

    編程 2025-04-29
  • VSCode為什麼無法運行Java

    解答:VSCode無法運行Java是因為默認情況下,VSCode並沒有集成Java運行環境,需要手動添加Java運行環境或安裝相關插件才能實現Java代碼的編寫、調試和運行。 一、…

    編程 2025-04-29
  • Java任務下發回滾系統的設計與實現

    本文將介紹一個Java任務下發回滾系統的設計與實現。該系統可以用於執行複雜的任務,包括可回滾的任務,及時恢復任務失敗前的狀態。系統使用Java語言進行開發,可以支持多種類型的任務。…

    編程 2025-04-29
  • Java 8 Group By 會影響排序嗎?

    是的,Java 8中的Group By會對排序產生影響。本文將從多個方面探討Group By對排序的影響。 一、Group By的概述 Group By是SQL中的一種常見操作,它…

    編程 2025-04-29

發表回復

登錄後才能評論