java設計界面代碼,java編寫界面的代碼

用java寫一個登陸界面代碼。

概述

創新互聯建站致力于互聯網品牌建設與網絡營銷,包括成都做網站、網站制作、SEO優化、網絡推廣、整站優化營銷策劃推廣、電子商務、移動互聯網營銷等。創新互聯建站為不同類型的客戶提供良好的互聯網應用定制及解決方案,創新互聯建站核心團隊十載專注互聯網開發,積累了豐富的網站經驗,為廣大企業客戶提供一站式企業網站建設服務,在網站建設行業內樹立了良好口碑。

具體框架使用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做個如下界面

對于窗口的左側部分,存在幾種可能, ?1: 可能是工具欄里的按鈕 2: 可能是選項卡 3: 一個按鈕

三種可能性我寫了三種參考代碼.(建議對問題的描述更加清晰,這樣可以得到更貼切的回答)

參考代碼一(選項卡)

import?java.awt.*;

import?java.awt.event.*;

import?javax.swing.*;

public?class?TabbedPaneDemo?extends?JFrame?{

public?TabbedPaneDemo()?{

initMenuBar();//初始化菜單

JPanel?jp1?=?new?JPanel();

jp1.setBackground(Color.RED);

JPanel?jp2?=?new?JPanel();

jp2.setBackground(Color.BLUE);

JPanel?jp3?=?new?JPanel();

jp3.setBackground(Color.GREEN);

JTabbedPane?jtp?=?new?JTabbedPane(JTabbedPane.LEFT);//選項卡面板,選項卡標題靠右

jtp.add("選項卡一",?jp1);

jtp.add("選項卡二",?jp2);

jtp.add("選項卡三",?jp3);

add(jtp);

setSize(300,?200);//窗口大小

setLocationRelativeTo(null);//居中

setDefaultCloseOperation(EXIT_ON_CLOSE);//點擊關閉按鈕就退出

}

private?void?initMenuBar()?{

JMenuBar?jmb?=?new?JMenuBar();

JMenu?jm1=new?JMenu("系統");

JMenuItem?item1=new?JMenuItem("退出");

item1.addActionListener(new?ActionListener()?{

@Override

public?void?actionPerformed(ActionEvent?e)?{

System.exit(0);//點擊退出?菜單項時,?結束程序

}

});

jm1.add(item1);

JMenu?jm2?=?new?JMenu("幫助");

jmb.add(jm1);

jmb.add(jm2);

setJMenuBar(jmb);//設置本窗口的菜單欄

}

public?static?void?main(String[]?args)?{

SwingUtilities.invokeLater(new?Runnable()?{

public?void?run()?{

new?TabbedPaneDemo().setVisible(true);//創建窗口并設置可見

}

});

}

}

參考代碼二(工具欄)

import?java.awt.*;

import?java.awt.event.*;

import?javax.swing.*;

//?主窗口??繼承自JFrame

public?class?DemoFrame?extends?JFrame?implements?ActionListener?{

JTextPane?jtpInfo;

JPanel?jpCenter;

static?final?String[]?INFO?=?{?"星型結構是最古老的一種連接方式。",?"環型結構在LAN中使用較多。"?};

//?構造器

public?DemoFrame()?{

initMenuBar();//?菜單欄的初始化

initComponent();//?組件的初始化

initToolBar();//?工具欄的初始化

initFrame();//?窗口的設置

}

private?void?initFrame()?{//?窗口的設置

setTitle("窗口標題");

setSize(500,?420);

setLocationRelativeTo(null);

setDefaultCloseOperation(EXIT_ON_CLOSE);

}

private?void?initComponent()?{//?組件初始化

jtpInfo?=?new?JTextPane();

jpCenter?=?new?JPanel();

jpCenter.setBackground(Color.CYAN);

jpCenter.add(new?JTextField(8));

jpCenter.add(new?JButton("確認"));

}

private?void?initToolBar()?{//?初始化工具欄

JToolBar?jtb?=?new?JToolBar("工具欄",?JToolBar.VERTICAL);

JButton?jb1?=?new?JButton("星型拓撲");

jb1.addActionListener(this);

JButton?jb2?=?new?JButton("環形拓撲");

jb2.addActionListener(this);

JButton?jb3?=?new?JButton("其他資料");

jb3.addActionListener(this);

jtb.add(jb1);

jtb.add(jb2);

jtb.add(jb3);

add(jtb,?BorderLayout.WEST);

}

//?初始化菜單欄,并添加事件響應機制

private?void?initMenuBar()?{

JMenuBar?jmb?=?new?JMenuBar();

JMenu?jm1?=?new?JMenu("系統");

JMenuItem?item1?=?new?JMenuItem("新建");

item1.addActionListener(this);//?給菜單項要添加Action事件的響應器,本來實現了ActionListener接口,所以直接添加本類作為響應器

JMenuItem?item2?=?new?JMenuItem("退出");

item2.addActionListener(this);

jm1.add(item1);

jm1.addSeparator();//?兩個菜單項中間的分割線

jm1.add(item2);

JMenu?jm2?=?new?JMenu("幫助");

//?給菜單要添加鼠標事件響應器

jm2.addMouseListener(new?MouseAdapter()?{

@Override

public?void?mousePressed(MouseEvent?e)?{//?(鼠標按下時)彈出對話框

JOptionPane.showMessageDialog(null,?"版本Ver1.0\n使用說明:關于網絡的拓撲結構");

;

}

});

jmb.add(jm1);

jmb.add(jm2);

setJMenuBar(jmb);//?設置窗口的菜單欄

}

//?實現ActionListener接口,需要重寫的方法

@Override

public?void?actionPerformed(ActionEvent?e)?{

String?cmd?=?e.getActionCommand();//?通過按鈕的Command來判斷是哪一個按鈕被點擊了

if?(cmd.equals("新建"))?{

JOptionPane.showMessageDialog(null,?"新建菜單項被點擊了");

//?do?something

}?else?if?(cmd.equals("退出"))?{

System.exit(0);

}?else?if?(cmd.equals("星型拓撲"))?{

remove(jpCenter);//?刪除組件

add(jtpInfo);//?添加文本組件

jtpInfo.setText(INFO[0]);//?設置文字

SwingUtilities.updateComponentTreeUI(this);//?刷新

}?else?if?(cmd.equals("環形拓撲"))?{

remove(jpCenter);

add(jtpInfo);

jtpInfo.setText(INFO[1]);

SwingUtilities.updateComponentTreeUI(this);

}?else?if?(cmd.equals("其他資料"))?{

remove(jtpInfo);

add(jpCenter);

SwingUtilities.updateComponentTreeUI(this);

}?else?{

System.out.println(cmd);

}

}

//?main方法,程序入口

public?static?void?main(String[]?args)?{

SwingUtilities.invokeLater(new?Runnable()?{

public?void?run()?{

new?DemoFrame().setVisible(true);

}

});

}

}

參考代碼三

import?java.awt.*;

import?java.awt.event.*;

import?javax.swing.*;

public?class?SimpleDemo?extends?JFrame?implements?ActionListener{

JPanel?jp1;

public?SimpleDemo()?{

initMenuBar();

JPanel?jpWest?=?new?JPanel();

JButton?jb?=?new?JButton("拓撲");

jb.addActionListener(this);

jpWest.add(jb);

jp1?=?new?JPanel();

jp1.setBackground(Color.RED);

jp1.setVisible(false);

add(jp1);

add(jpWest,?BorderLayout.WEST);

setSize(300,?200);//?窗口大小

setLocationRelativeTo(null);//?居中

setDefaultCloseOperation(EXIT_ON_CLOSE);//?點擊關閉按鈕就退出

}

private?void?initMenuBar()?{

JMenuBar?jmb?=?new?JMenuBar();

JMenu?jm1?=?new?JMenu("系統");

JMenuItem?item1?=?new?JMenuItem("退出");

item1.addActionListener(new?ActionListener()?{

@Override

public?void?actionPerformed(ActionEvent?e)?{

System.exit(0);//?點擊退出?菜單項時,?結束程序

}

});

jm1.add(item1);

JMenu?jm2?=?new?JMenu("幫助");

jmb.add(jm1);

jmb.add(jm2);

setJMenuBar(jmb);//?設置本窗口的菜單欄

}

public?static?void?main(String[]?args)?{

SwingUtilities.invokeLater(new?Runnable()?{

public?void?run()?{

new?SimpleDemo().setVisible(true);//?創建窗口并設置可見

}

});

}

@Override

public?void?actionPerformed(ActionEvent?e)?{

jp1.setVisible(!jp1.isVisible());

}

}

java圖形界面代碼

import?java.awt.*;

import?java.awt.event.*;

import?java.io.*;

import?javax.swing.*;

public?class?ReadBook?extends?JFrame?{

JTextArea?jta;

JTextField?jtf;

JButton?jb;

public?ReadBook()?{

jta?=?new?JTextArea();

jtf?=?new?JTextField(30);

jtf.setText("文件保存路徑如c:\\ab.txt");

jb?=?new?JButton("保存文字");

JPanel?jp?=?new?JPanel();

jp.add(jtf);

jp.add(jb);

add(jta);

add(jp,?BorderLayout.SOUTH);

setBounds(500,?100,?500,?380);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

setVisible(true);

jb.addActionListener(new?ActionListener()?{

@Override

public?void?actionPerformed(ActionEvent?e)?{

//-------------核心代碼---------

String?path?=?jtf.getText();

File?f?=?new?File(path);

String?txt?=?jta.getText().replaceAll("\n",?"\r\n");

try?{

BufferedWriter?bw?=?new?BufferedWriter(new?FileWriter(f));

bw.write(txt);//寫入文件中

bw.close();

}?catch?(Exception?e1)?{

e1.printStackTrace();

}

//-------------核心代碼---------

}

});

}

public?static?void?main(String[]?args)?{

new?ReadBook();

}

}

JAVA中GUI登錄界面設計源代碼是什么?

import java.awt.BorderLayout;

import java.awt.Container;

import java.awt.FlowLayout;

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);

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 l1 = new JLabel("用戶名:");

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

JLabel l2 = new JLabel("密 碼:");

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

fieldPanel.add(l1);

fieldPanel.add(l2);

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");

}

public static void main(String[] args){

new Login();

}

}

Java 用戶界面設計 求界面代碼

一: 首先弄清題目的意思

A.需要的主要組件列表:

1. ?創建一個窗口,窗口標題叫Information

2. ?3個標簽, 用于顯示文字 Name Number Class

3. ?3個文本框, 用于填寫信息

4. ?1個按鈕, ?文字是確認

5. ?1個文本域

B.業務邏輯

1. 當點擊按鈕確認的時候, 把 文本框的信息顯示到文本域

C.設計的主要技術

JLabel , JButton, JTextField ...等, 都是swing的組件 , ?所以應該使用swing進行創建

二: ?確定使用的布局

swing雖然重寫了大部分的組件, 但是布局, 依舊沿襲awt技術

分析圖片上的布局:

至少有2種方法可以實現,?

方法一: 絕對布局 , 優點: ?配合可視化GUI拖曳, 可以完美的實現圖上的組件的位置

但是缺點也是致命的, 不同的操作系統平臺下, 可能會出現位置的移動,

只適合開發平臺, 移植效果差 . ?所以不推薦使用

方法二: 靈活的表格布局, 配合流式布局 , 所有操作系統下,顯示效果都比較統一.?

三: 效果圖

四: 參考代碼

import?java.awt.*;

import?java.awt.event.*;

import?javax.swing.*;

public?class?FrameDemo?extends?JFrame?{

//申明需要的組件

private?final?JTextField?jtf1,jtf2,jtf3;

private?final?JTextArea?jta;

public?FrameDemo()?{

setTitle("Information");//設置窗口標題

setSize(320,?360);//設置窗口大小

setLocationRelativeTo(null);//設置窗口居中

setDefaultCloseOperation(EXIT_ON_CLOSE);//設置關閉時退出虛擬機

getContentPane().setLayout(new?FlowLayout());//設置窗口布局為流式布局

JPanel?jp?=?new?JPanel(new?GridLayout(4,?2));//設置jp面板為表格布局4行2列

//第一行

JPanel?jp01?=?new?JPanel();

JLabel?jl1?=?new?JLabel("Name:");

jp01.add(jl1);

JPanel?jp1?=?new?JPanel();

jtf1?=?new?JTextField(8);

jp1.add(jtf1);

//第二行

JPanel?jp02?=?new?JPanel();

JLabel?jl2?=?new?JLabel("Number:");

jp02.add(jl2);

JPanel?jp2?=?new?JPanel();

jtf2?=?new?JTextField(8);

jp2.add(jtf2);

//第三行

JPanel?jp03?=?new?JPanel();

JLabel?jl3?=?new?JLabel("Class:");

jp03.add(jl3);

JPanel?jp3?=?new?JPanel();

jtf3?=?new?JTextField(8);

jp3.add(jtf3);

//第四行

JPanel?jp04?=?new?JPanel();

JLabel?jl4?=?new?JLabel("");

jp04.add(jl4);

JPanel?jp4?=?new?JPanel();

JButton?jb?=?new?JButton("確認");

jp4.add(jb);

jp.add(jp01);

jp.add(jp1);

jp.add(jp02);

jp.add(jp2);

jp.add(jp03);

jp.add(jp3);

jp.add(jp04);

jp.add(jp4);

getContentPane().add(jp);

jta?=?new?JTextArea();

jta.setColumns(20);//設置文本域的大小

jta.setEditable(false);//設置文本域不可編輯

jta.setBackground(jp.getBackground());//設置文本域的背景色和面板一樣

getContentPane().add(jta);

jb.addActionListener(new?ActionListener()?{//給按鈕添加事件

public?void?actionPerformed(ActionEvent?e)?{//點擊按鈕,顯示信息到文本域

String?name?=?jtf1.getText();

String?number?=?jtf2.getText();

String?clazz?=?jtf3.getText();

jta.setText("You?name?is?"+name+"?number?is?"+number+"?class?is?"+clazz);

}

});

}

public?static?void?main(String[]?args)?{

new?FrameDemo().setVisible(true);//創建窗口,被設置為可見

}

}

五: 拓展

雖然圖形界面的實現方法是多樣的, ?我們一定要根據具體情況, 選擇一個比較優化的 合理的, 符合業務邏輯的實現方法

本文題目:java設計界面代碼,java編寫界面的代碼
文章URL:http://m.kartarina.com/article6/hdopog.html

成都網站建設公司_創新互聯,為您提供做網站、網站營銷、網站設計公司、微信公眾號定制開發Google

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

成都網站建設
主站蜘蛛池模板: 国产精品无码一区二区三级| av无码人妻一区二区三区牛牛 | 无码中文字幕乱码一区| 亚洲中文无码永久免| 中文精品无码中文字幕无码专区 | 夜夜添无码一区二区三区| 亚洲AV永久无码精品一福利| 成人无码WWW免费视频| 亚洲av无码一区二区三区乱子伦| 亚洲Av无码乱码在线播放| 中文字幕无码av激情不卡| 日韩av无码国产精品| 国产成人无码av在线播放不卡| 97人妻无码一区二区精品免费| 亚洲精品无码久久久久秋霞| 精品无码一区二区三区爱欲九九 | 人妻少妇看A偷人无码精品视频| 亚洲AV无码一区二区三区DV| 久久综合精品国产二区无码| 亚洲AV无码一区二区二三区入口| 亚洲综合无码无在线观看| 亚洲AV无码乱码国产麻豆穿越| 国产在线观看无码免费视频| 国产AV无码专区亚洲AWWW| 久久精品aⅴ无码中文字字幕不卡| 成年午夜无码av片在线观看| 午夜精品久久久久久久无码| 亚洲AV成人无码网天堂| 亚洲Aⅴ无码一区二区二三区软件 亚洲?V无码乱码国产精品 | 无码少妇一区二区浪潮av| 亚洲爆乳少妇无码激情| 亚洲av永久无码精品网址| 欧洲人妻丰满av无码久久不卡| 18禁免费无码无遮挡不卡网站| 无码成A毛片免费| 无码人妻一区二区三区免费| 中文字幕av无码无卡免费| 无码人妻精一区二区三区| 麻豆精品无码国产在线果冻| 亚洲AV无码不卡在线观看下载| 亚洲va中文字幕无码|