java可視化界面代碼 java圖形化界面代碼

java 可視化界面編程

import java.awt.Button;

站在用戶的角度思考問題,與客戶深入溝通,找到博湖網(wǎng)站設(shè)計(jì)與博湖網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類型包括:成都做網(wǎng)站、成都網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、國(guó)際域名空間、雅安服務(wù)器托管、企業(yè)郵箱。業(yè)務(wù)覆蓋博湖地區(qū)。

import java.awt.Color;

import java.awt.Frame;

import java.awt.GridLayout;

import java.awt.Label;

import java.awt.TextField;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.awt.event.WindowAdapter;

import java.awt.event.WindowEvent;

public class awttest

{

TextField id,pw;

TextField printid,printpw;

public awttest(){

Frame f=new Frame("用戶登錄");

f.setLayout(new GridLayout(4,2));

id=new TextField("輸入用戶名",10);

pw=new TextField(10);

pw.setEchoChar('*');

f.add(new Label("用戶名:",Label.CENTER));

f.add(id);

f.add(new Label("密碼:",Label.CENTER));

f.add(pw);

Button b1=new Button("登陸");

Button b2=new Button("取消");

f.add(b1);

f.add(b2);

String str1=id.getText();

String str2=pw.getText();

printid=new TextField(str1,10);

printpw=new TextField(str2,10);

f.add(printid);

f.add(printpw);

f.pack();

printid.setBackground(new Color(220,0,0));

printpw.setBackground(new Color(220,0,0));

f.setSize(250,120);

f.setVisible(true);

b1.addActionListener(new ActionListener() { // 點(diǎn)擊“顯示窗口”菜單后將窗口顯示出來

public void actionPerformed(ActionEvent e) {

printid.setText(id.getText());

printpw.setText(pw.getText());

}

});

f.addWindowListener(new WindowAdapter()

{

public void windowClosing(WindowEvent args)

{

System.exit(0);

}

}

);

}

public static void main(String[] args){

new awttest();

}

}

OK!!可以運(yùn)行

Java 用戶界面設(shè)計(jì) 求界面代碼

一: 首先弄清題目的意思

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

1. ?創(chuàng)建一個(gè)窗口,窗口標(biāo)題叫Information

2. ?3個(gè)標(biāo)簽, 用于顯示文字 Name Number Class

3. ?3個(gè)文本框, 用于填寫信息

4. ?1個(gè)按鈕, ?文字是確認(rèn)

5. ?1個(gè)文本域

B.業(yè)務(wù)邏輯

1. 當(dāng)點(diǎn)擊按鈕確認(rèn)的時(shí)候, 把 文本框的信息顯示到文本域

C.設(shè)計(jì)的主要技術(shù)

JLabel , JButton, JTextField ...等, 都是swing的組件 , ?所以應(yīng)該使用swing進(jìn)行創(chuàng)建

二: ?確定使用的布局

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

分析圖片上的布局:

至少有2種方法可以實(shí)現(xiàn),?

方法一: 絕對(duì)布局 , 優(yōu)點(diǎn): ?配合可視化GUI拖曳, 可以完美的實(shí)現(xiàn)圖上的組件的位置

但是缺點(diǎn)也是致命的, 不同的操作系統(tǒng)平臺(tái)下, 可能會(huì)出現(xiàn)位置的移動(dòng),

只適合開發(fā)平臺(tái), 移植效果差 . ?所以不推薦使用

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

三: 效果圖

四: 參考代碼

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");//設(shè)置窗口標(biāo)題

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

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

setDefaultCloseOperation(EXIT_ON_CLOSE);//設(shè)置關(guān)閉時(shí)退出虛擬機(jī)

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

JPanel?jp?=?new?JPanel(new?GridLayout(4,?2));//設(shè)置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("確認(rèn)");

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);//設(shè)置文本域的大小

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

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

getContentPane().add(jta);

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

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

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);//創(chuàng)建窗口,被設(shè)置為可見

}

}

五: 拓展

雖然圖形界面的實(shí)現(xiàn)方法是多樣的, ?我們一定要根據(jù)具體情況, 選擇一個(gè)比較優(yōu)化的 合理的, 符合業(yè)務(wù)邏輯的實(shí)現(xiàn)方法

如何在Eclipse中進(jìn)行Java的可視化界面設(shè)計(jì)

準(zhǔn)備工作:

1、下載JDK;

2、下載Eclipse;

3、下載相應(yīng)的EMF、GEF、VE;

注意:三個(gè)插件的版本要和Eclipse的版本配套才能正確使用,至于配套的說明請(qǐng)參考下載頁面的說明

開始安裝:

1、安裝JDK;

這個(gè)比較容易,標(biāo)準(zhǔn)的Windows安裝程序,下一步,再下一步即可,安裝完成后,也不需要重啟。

2、安裝Eclipse;

Eclipse是綠色軟件,不需要安裝,只需要解壓縮,然后即可運(yùn)行。

為了說明方便,我把它解壓縮到C盤根目錄下,得到C:\eclipse目錄,運(yùn)行C:\eclipse\eclipse.exe即可。

注意:下面的安裝,需要先關(guān)閉eclipse程序。

3、安裝EMF、GEF、VE;

對(duì)于Eclipse來說,這些都是它的插件,所以,安裝方法都是一樣的。插件下載地址

A、在C:\eclipse目錄下,建立四個(gè)子目錄:C:\eclipse\emf、C:\eclipse\gef、C:\eclipse\ve、C:\eclipse\links;

B、把下載的EMF、GEF、VE都解壓縮到相應(yīng)的目錄中,即:把EMF壓縮包解壓縮到C:\eclipse\emf中,得到C:\eclipse\emf\eclipse目錄,以此類推,完成GEF、VE的解壓縮;

C、在C:\eclipse\links目錄下,新建一個(gè)文本文件,名字可隨便取,如:link.txt。

然后在link.txt文件中,加入以下三行文字:

path=emf

path=gef

path=VE

注意:這里用的是相對(duì)路徑,也可以把EMF、GEF、VE解壓縮到其它地方,再用絕對(duì)路徑即可。

再注意:絕對(duì)路徑是用 “/” 或者 “\\” 分隔,而不是“\”

補(bǔ)充知識(shí):為什么ve需要emf和gef:

Visual Editor 所利用的最為明顯的工具是 GEF,即圖形化編輯框架(Graphical Editing

Framework)。GEF 建立于本地 Eclipse 圖形化工具集 SWT

之上,以使得開發(fā)一個(gè)圖形化編輯器或者所見即所得文本編輯器更為容易。如果您熟悉 SWT (或者

AWT/Swing,在這方面它們是類似的)中的圖形原語,那么您會(huì)知道繪制和處理任意的形狀(比如矩形、箭頭和橢圓)是比較困難的,更不用說管理它們之間的關(guān)系以及它們所代表的數(shù)據(jù)模型了。

GEF 被劃分為兩個(gè)部分:第一部分是 Draw2D 插件,這是一個(gè)輕量級(jí)的繪圖和呈現(xiàn)包,用于幫助您繪制圖形。第二部分是 GEF 插件,除了其他工具以外,這一部分中還增加了選擇和創(chuàng)建工具、工具選項(xiàng)板,以及用于在數(shù)據(jù)模型和視圖之間進(jìn)行映射的控制器框架。

GEF

是一個(gè)模型無關(guān)的框架,但是作為 Visual Editor (以及其他生成代碼的圖形化工具)的一部分,它在后臺(tái)使用 Eclipse

建??蚣埽‥clipse Modeling Framework, EMF),以在模型、Java 類和圖形化表示之間進(jìn)行映射,其中模型是使用

XML 元數(shù)據(jù)交換(XML Metadata Interchange, XMI)在內(nèi)部存儲(chǔ)的。EMF

的重要特性之一是它確保所有這些映射都是一對(duì)一的;所以盡管 XMI

可以被認(rèn)為是模型的標(biāo)準(zhǔn)表示,但是在代碼和圖形之間來回切換并不會(huì)丟失任何信息。這就是為什么 Visual Editor

只需要保存模型的一種表示(即 Java 源代碼),以及開發(fā)人員可以自由地在圖形化編輯器之外編輯該源代碼的原因。

4、安裝完畢,再次運(yùn)行Eclipse,它啟動(dòng)時(shí)會(huì)自動(dòng)查找links目錄下所有的文本文件,并加載其中path指向的所有插件,這里當(dāng)然包括VE。

A、如果不能確定是否已經(jīng)加載,可選擇菜單Help-Software Updates-Manage Configuration,打開Product Configuration窗體,在其左邊的樹形欄里,可以看到已加載的插件。

B、如果加載沒有成功,可以試試用Eclipse -clear來運(yùn)行程序。

C、如果加載仍沒有成功,可以試試刪除C:\eclipse\configuration下的內(nèi)容,僅保留config.ini文件。然后再用Eclipse來運(yùn)行程序。

================================================================

啟動(dòng)eclipse平臺(tái)。剛開始,你可能覺得eclipse并沒有什么變化。先別急,請(qǐng)新建一個(gè)項(xiàng)目,點(diǎn)擊"文件"菜單下的"新建"子菜單,選擇并建立一個(gè)新的"java項(xiàng)目"。然后在工具欄上的"新建Java類" 圖標(biāo)上,點(diǎn)擊右邊的小箭頭,將展開如下圖的菜單:

在此菜單上,多了一個(gè)"Visual Calss"的子菜單,這就是進(jìn)入Visual Editor的入口之一。點(diǎn)擊"Visual Class",就會(huì)彈出創(chuàng)建GUI程序的對(duì)話框,選擇完畢后,就會(huì)進(jìn)入可視化編輯畫面:

用VE寫個(gè)Hello:

1、新建一個(gè)項(xiàng)目;

File-New-Project...,選擇“Java Project”,然后Next,輸入一個(gè)項(xiàng)目名字:Hello,其它全部默認(rèn),最后回車,或者點(diǎn)擊“Finish”完成。

2、設(shè)置SWT庫(kù);

A、選擇項(xiàng)目Hello,右鍵菜單,打開Properties對(duì)話框。

B、選擇左邊樹形中的Java Build Path,在其設(shè)置頁中,選擇Libraries頁,點(diǎn)擊“Add Library...”;

C、在打開的Add Library對(duì)話框里,選擇Standard Widget Toolkit(SWT),Next;

D、在打開的SWT Library Options對(duì)話框中,勾選上“Include support for JFace library”,F(xiàn)inish即可。

E、回到Properties對(duì)話框,OK即可。

3、新建Hellworld.java文件;

A、選擇項(xiàng)目Hello,右鍵菜單,New-Other...(或者點(diǎn)擊工具欄里新建圖標(biāo)),打開Select a wizard對(duì)話框,選擇Java/Visual Class,Next;

B、在打開的Java Visual Class對(duì)話框中,

在Package里,輸入:com.cnblogs.pan;

在Name里,輸入:Helloworld;

在Style里,選擇SWT/Shell;

勾選上public static void main(String[] args);

最后Finish。

4、到了這一步,應(yīng)該就可以看到窗體了,那些控件都在Palette里,點(diǎn)開就能看到了。

A、在窗體上右擊,選擇Set Layout,再選擇null;(此處為個(gè)人習(xí)慣)

B、從Palette里,選中一個(gè)Button,并在窗體任意位置畫一個(gè)Button,在下面的Properties窗口里,設(shè)置其text為ClickMe;

C、選中該按鈕,右擊選擇Events-Add Event,在打開的對(duì)話框中,選擇左邊的widgetSelected,F(xiàn)inish。

D、這時(shí),光標(biāo)會(huì)自動(dòng)定位到程序相應(yīng)的位置,我們?cè)诔绦蚶锛尤胂旅嬲Z句:

public void widgetSelected(org.eclipse.swt.events.SelectionEvent e) {

System.out.println("widgetSelected()");

MessageDialog.openInformation(null, "Hello", "Hello World!");//加入這條語句

}

E、保存程序,點(diǎn)擊菜單Run-Run As-Java Application,呵呵,跟全世界打個(gè)招呼吧!

新聞標(biāo)題:java可視化界面代碼 java圖形化界面代碼
文章分享:http://muchs.cn/article14/hgsjde.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供虛擬主機(jī)、云服務(wù)器、做網(wǎng)站、建站公司、網(wǎng)站建設(shè)、手機(jī)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

手機(jī)網(wǎng)站建設(shè)