Java GUI 實現登錄界面

具體效果圖:

在這里插入圖片描述

詳細代碼:

package java_gui;import java.awt.Color;
import java.awt.Container;
import java.awt.Cursor;
import java.awt.Font;
import java.awt.Image;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JCheckBox;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPasswordField;
import javax.swing.JRootPane;
import javax.swing.JTextField;public class Login extends JFrame {private static final long serialVersionUID = -6788045638380819221L;//用戶名private JTextField ulName;//密碼private JPasswordField ulPasswd;//小容器private JLabel j1;private JLabel j2;private JLabel j3;private JLabel j4;//小按鈕private JButton b1;private JButton b2;private JButton b3;//復選框private JCheckBox c1;private JCheckBox c2;//列表框private JComboBox<String> cb1;/*** 初始化QQ登錄頁面* */public Login() {//設置登錄窗口標題this.setTitle("QQ登錄");//去掉窗口的裝飾(邊框)//  this.setUndecorated(true);//采用指定的窗口裝飾風格this.getRootPane().setWindowDecorationStyle(JRootPane.NONE);//窗體組件初始化init();this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//設置布局為絕對定位this.setLayout(null);this.setBounds(0, 0, 355, 265);//設置窗體的圖標Image img0 = new ImageIcon("D:/logo.png").getImage();this.setIconImage(img0);//窗體大小不能改變this.setResizable(false);//居中顯示this.setLocationRelativeTo(null);//窗體顯示this.setVisible(true);}/*** 窗體組件初始化* */public void init() {//創建一個容器,其中的圖片大小和setBounds第三、四個參數要基本一致(需要自己計算裁剪)Container container = this.getContentPane();j1 = new JLabel();//設置背景色Image img1 = new ImageIcon("D:/bgimg.png").getImage();j1.setIcon(new ImageIcon(img1));j1.setBounds(0, 0, 355, 265);//qq頭像設定j2 = new JLabel();Image img2 = new ImageIcon("D:/hdimg.png").getImage();j2.setIcon(new ImageIcon(img2));j2.setBounds(40, 95, 50, 53);//用戶名輸入框ulName = new JTextField();ulName.setBounds(100, 100, 150, 20);//注冊賬號j3 = new JLabel("注冊賬號");j3.setBounds(260, 100, 70, 20);//密碼輸入框ulPasswd = new JPasswordField();ulPasswd.setBounds(100, 130, 150, 20);//找回密碼j4= new JLabel("找回密碼");j4.setBounds(260, 130, 70, 20);//記住密碼c1 = new JCheckBox("記住密碼");c1.setBounds(105, 155, 80, 15);//自動登陸c2 = new JCheckBox("自動登陸");c2.setBounds(185, 155, 80, 15);//用戶登陸狀態選擇cb1 = new JComboBox<String>();cb1.addItem("在線");cb1.addItem("隱身");cb1.addItem("離開");cb1.setBounds(40, 150, 55, 20);//登陸按鈕b1 = new JButton("登錄");//設置字體和顏色和手形指針b1.setFont(new Font("宋體", Font.PLAIN, 12));b1.setForeground(Color.RED);b1.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));b1.setBounds(280, 200, 65, 20);//給按鈕添加b1.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {String cmd = e.getActionCommand();if("登錄".equals(cmd)) {String username = ulName.getText();String userpassword = ulPasswd.getText();if(username.equals("tskk") && userpassword.equals("123456")) {JOptionPane.showConfirmDialog(null, "登錄成功");} else {JOptionPane.showConfirmDialog(null, "登錄失敗");}}}});//多賬號b2 = new JButton("多賬號");b2.setBounds(5, 200, 75, 20);//設置b3 = new JButton("設置");b3.setBounds(100, 200, 65, 20);//所有組件用容器裝載j1.add(j2);j1.add(j3);j1.add(j4);j1.add(c1);j1.add(c2);j1.add(cb1);j1.add(b1);j1.add(b2);j1.add(b3);container.add(j1);container.add(ulName);container.add(ulPasswd);}public static void main(String[] args) {new Login();}
}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/531018.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/531018.shtml
英文地址,請注明出處:http://en.pswp.cn/news/531018.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

for-each循環的認識、定義、適用對象、舉例、局限性

文章目錄1. for-each的認識2. for-each的定義3. 哪些類型的對象可以適用For-Each&#xff1f;4. for-each的舉例5. for-each的局限性1. for-each的認識 &#xff08;1&#xff09;for-each語句是Java中for-Index的一種加強&#xff0c;是Java 5帶來的新語法糖。 &#xff08;2…

C語言 實現登錄注冊功能

文章目錄加載動畫實驗結果圖實驗代碼加載動畫 #include<iostream> #include<windows.h> using namespace std;int main(){cout<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl;cout.widen(65);co…

C語言小游戲 ——俄羅斯方塊

#include<stdio.h> #include<stdlib.h> #include<windows.h>//Sleep()函數的頭文件 #include<time.h> #include<conio.h> #define MOD 28 #define SIZE_N 19//控制邊框的高度 #define SIZE_M 12 //控制邊框的寬度 int a[100]{200,30,20};/…

C/C++課程設計 之職工管理系統

文章目錄 (一) 題目內容及簡介(二) 概要設計(三) 詳細設計(四) 實現代碼(五) 相關案例案例一案例二案例三案例四案例五案例六案例七案例八案例九案例十案例十一(一) 題目內容及簡介 1.課題來源 課題名稱和來源,主要介紹為何選擇此題目來開展課程設計,此課題的開展能體現面向…

C++ 知識要點

1.類與對象 類是事物的抽象。類的對象就是類的具體化&#xff0c;實際化 2.C三大特性 繼承、封裝、多態 3.C父類與子類繼承過程中&#xff0c;子類的特點&#xff1f; 子類擁有父類的所有屬性和行為 子類就是一種特殊的父類 子類對象可以當作父類對象使用 子類中可以添加父類…

C/C++小游戲 ——貪吃蛇

文章目錄案例一案例二案例三案例四案例五案例六案例七案例八案例九案例一 #include <stdio.h>#include <windows.h>#include <conio.h>#include <time.h>//游戲窗口#define FrameX 4//游戲窗口左上角的X軸坐標#define FrameY 4//游戲窗口左上角的Y軸坐…

C/C++課程設計 新生入學管理系統(二)

文章目錄 案例十六案例十七案例十八案例十九案例二十案例二十一案例二十二案例二十三案例二十四案例二十五案例二十六案例二十七案例二十八案例十六 #include<iostream> #include<cstring> //strcpy,strcmp #

Java類名.方法和變量

文章目錄(1) 類名.方法(2) 變量(1) 類名.方法 要是類名直接調用的方法&#xff0c;那這個方法就是靜態的(static)方法&#xff0c;是不用new出新對象實例就可以直接調用的方法。看下面例子&#xff1a; class A {public static void Method1(int a, int b) {//方法體}public …

Java小案例(二) 用數組實現增刪查改排序

文章目錄案例一案例二案例三案例四案例五案例一 Student.Java package curd;public class Student {private String stuid;private String name;private int chinese;private int math;private int english;private int avg;private int sum;public int getAvg() {return avg;…

有趣的一行代碼

文章目錄愛心曼德勃羅集合打印99乘法表實現快速排序禪語漫畫迷宮愛心 print(\n.join([.join([(????????????[(x-y)%12]if((x*0.05)**2(y*0.1)**2-1)**3-(x*0.05)**2*(y*0.1)**3<0 else )for x in range(-30,30)])for y in range(15,-15,-1)]))效果圖&#xff1…

Python練習之 對文件進行創建,然后重命名文件最近進行文件刪除

import os os.mkdir("D:\\1815925603") context ("序號&#xff1a;1815925603\n""姓名&#xff1a;阿信\n""班級&#xff1a;18云計算2班\n") with open (D:\\1815925603\\file1.txt,a) as fp:fp.write(context)fp.seek(0, 0) with …

Java接口中的成員變量為什么必須是static ?

接口的含義 接口就是提供一種統一的協議, 而接口中的屬性也屬于協議中的成員。它們是公共的,靜態的,最終的常量。相當于全局常量。 在interface里面的變量都是public static final 的。 public static final int i10;等價于int i10;(可以省略掉一部分) //注意在聲明的時候要…

Java函數式編程和面向對象編程

文章目錄什么是函數式編程&#xff1f;什么是面向對象編程&#xff1f;函數式編程和面向對象編程的優缺點什么是函數式編程&#xff1f; 函數式編程的核心&#xff1a;在思考問題時&#xff0c;使用不可變對象和函數&#xff0c;函數將一個值經過處理&#xff0c;映射成另一個…

JDBC實現圖書管理小案例

文章目錄項目文件結構項目運行效果項目詳細代碼項目文件下載相關案例案例一案例二案例三案例四案例五案例六案例七案例八項目文件結構 項目運行效果 項目詳細代碼 JDBCUtils.java package jdbc;import java.sql.*; import com.mysql.jdbc.Driver;public class JDBCUtils {pri…

Java實現多線程售票

文章目錄Synchronized和Lock的區別是什么&#xff1f;案例一方法一 繼承Thread類方法二 實現Runnable接口案例二方法一 繼承Thread類方法二 實現Runnable接口案例三方法一 繼承Thread類方法二 實現Runnable接口案例四方法一 繼承Thread類方法二 實現Runnable接口案例五方法一 繼…

基于TCP原理,采用Socket通信技術,實現聊天室

文章目錄案例一案例二案例三案例四案例五相關案例案例一 Client.java package SocketCode;import java.awt.Color; import java.awt.Font; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener;import java.io.*; import …

HTML+CSS+JS 實現登錄注冊界面

文章目錄案例一 滑動樣式案例二 滑動樣式案例三 動態樣式案例四 普通樣式案例五 滑動樣式案例六 普通樣式具體怎么獲取呢&#xff1f;案例一 滑動樣式 login.html <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8">…

數據結構課程設計 迷宮問題

文章目錄一、 目的與要求二、 問題描述和求解方法三、 解題過程四、 實現源碼五、 相關案例案例一案例二一、 目的與要求 1、目的&#xff1a; 通過布置具有一定難度的實際程序設計項目&#xff0c;使學生進一步理解和掌握課堂上所學各種基本抽象數據類型的邏輯結構、存儲結構和…

html+css 小案例(一)

文章目錄點擊下載index.html <!DOCTYPE html> <html lang"ch"> <head><meta charset"UTF-8"><title>Demo_Test</title><link rel"stylesheet" href"css/Dec.css"> </head> <body…

HTML+CSS+JS 表白代碼

文章目錄案例一 愛你到天昏地暗案例二 帶有音樂的表白代碼案例三 帶有圖片旋轉的表白案例源碼案例一 愛你到天昏地暗 <html> <style type"text/css"> <!-- .STYLE1 {font-size: medium} --> </style> <center><br><br>…