導航:首頁 > 編程語言 > java圖形界面教程

java圖形界面教程

發布時間:2023-06-05 15:28:22

A. 怎樣用java編寫圖形界面的Application程序

java編寫圖形界面需要用到swing等組件,可以在eclipse中安裝windowbuilder來開發窗體,自動生成窗體代碼,然後自己再根據需要修改,如:

package mainFrame;

import java.awt.EventQueue;

import java.awt.event.MouseAdapter;

import java.awt.event.MouseEvent;

import javax.swing.ImageIcon;

import javax.swing.JButton;

import javax.swing.JCheckBox;

import javax.swing.JFrame。

B. java 如何在圖形界面顯示程序運行結果

如果只是一些文本要顯示,可以在上面加個JTextArea,JTextField之類的組件,用這些組件的對象調用setText("")方法(括弧里是字元串)來顯示文本

比如:

importjava.awt.FlowLayout;

importjava.awt.event.ActionEvent;

importjava.awt.event.ActionListener;

importjava.util.HashMap;

importjava.util.Map;

importjavax.swing.JButton;

importjavax.swing.JFrame;

importjavax.swing.JScrollPane;

importjavax.swing.JTextArea;

/**文本區域

*

*@authorAdministrator

*

*/

{

=2306597749734227012L;

privateJButtonb1=newJButton("AddData"),b2=newJButton("ClearData");

privateJTextAreatext=newJTextArea(20,40);

privateMap<String,String>map=

newHashMap<String,String>();

publicTextArea(){

//Useupallthedata:

map.put("a","1");

map.put("b","2");

b1.addActionListener(newActionListener(){

@Override

publicvoidactionPerformed(ActionEvente){

//TODOAuto-generatedmethodstub

for(@SuppressWarnings("rawtypes")Map.Entryme:map.entrySet()){

text.append(me.getKey()+":"+me.getValue()+" ");

}

}

});

b2.addActionListener(newActionListener(){

@Override

publicvoidactionPerformed(ActionEvente){

//TODOAuto-generatedmethodstub

text.setText("");

}

});

setLayout(newFlowLayout());

add(newJScrollPane(text));

add(b1);

add(b2);

}

/**

*@paramargs

*/

publicstaticvoidmain(String[]args){

//TODOAuto-generatedmethodstub

GUItools.SwingConsole.run(newTextArea(),475,475);

}

}

JTextField和這差不多,只不過是顯示單行的。

如果要顯示其他字體的,可以用HTML格式,如下:

importjava.awt.FlowLayout;

importjava.awt.event.ActionEvent;

importjava.awt.event.ActionListener;

importjavax.swing.JButton;

importjavax.swing.JFrame;

importjavax.swing.JLabel;

/**Swing組件上的HTML

*

*@authorAdministrator

*

*/

@SuppressWarnings("serial")

{

privateJButtonb=newJButton(

"<html><b><fontsize=+2>"+

"<center>Hello!<br><i>Pressmenow!");

//必須使文本以"<html>"標記開始。

publicHTMLButton(){

//TODOAuto-generatedconstructorstub

b.addActionListener(newActionListener(){

@Override

publicvoidactionPerformed(ActionEvente){

//TODOAuto-generatedmethodstub

add(newJLabel("<html>"+"<i><fontsize=+4>Kapow!"));

//Forceare-layouttoincludethenewlabel:

validate();

}

});

setLayout(newFlowLayout());

add(b);

}

/**

*@paramargs

*/

publicstaticvoidmain(String[]args){

//TODOAuto-generatedmethodstub

GUItools.SwingConsole.run(newHTMLButton(),200,500);

}

}

C. Java編寫一個圖形界面

rcp(SWT/JFace)開發的要不要,同樣是java的

D. JAVA圖形界面程序編寫

我真的是抽風了,手癢了,給你寫了這段代碼,如果樓主、、、
嘻嘻,追點分給我吧

import java.awt.*;
import java.awt.event.*;
import java.io.*;
import javax.swing.*;

public class _9 extends JFrame implements ActionListener
{
static final String OUTPUT="C://Test.txt";
JPanel pnl;
JLabel lbl;
JTextField txt1,txt2;
JButton btnCopy,btnClear,btnOutput,btnColor;
public _9()
{
super("網路題目");
pnl=new JPanel();
this.setContentPane(pnl);
pnl.setLayout(null);
pnl.setBackground(Color.WHITE);
lbl=new JLabel("網路");
txt1=new JTextField(10);
txt2=new JTextField(10);
btnCopy=new JButton("復制");
btnCopy.addActionListener(this);
btnClear=new JButton("清除");
btnClear.addActionListener(this);
btnOutput=new JButton("寫入");
btnOutput.addActionListener(this);
btnColor=new JButton("變色");
btnColor.addActionListener(this);
lbl.setBounds(100, 10, 80, 20);
txt1.setBounds(10, 40, 100, 20);
txt2.setBounds(120, 40, 100, 20);
btnCopy.setBounds(10, 70, 60, 20);
btnClear.setBounds(75, 70, 60, 20);
btnOutput.setBounds(140, 70, 60, 20);
btnColor.setBounds(205, 70, 60, 20);
pnl.add(lbl);
pnl.add(txt1);
pnl.add(txt2);
pnl.add(btnCopy);
pnl.add(btnClear);
pnl.add(btnOutput);
pnl.add(btnColor);
setSize(300,150);
setVisible(true);
}
public void Copy()
{
txt2.setText(txt1.getText());
}
public void Clear()
{
txt1.setText("");
txt2.setText("");
pnl.setBackground(Color.WHITE);
}
public void Color()
{
pnl.setBackground(Color.BLACK);
}
public void Ouput()
{
try
{
File fl=new File("C:\\Test.txt");
FileWriter fw = new FileWriter(fl);
BufferedWriter bw = new BufferedWriter(fw);
bw.write(txt1.getText());
bw.close();
}
catch (IOException e)
{
e.printStackTrace();
}
}
public void actionPerformed(ActionEvent e)
{
if(e.getSource()==btnCopy)
this.Copy();
if(e.getSource()==btnClear)
this.Clear();
if(e.getSource()==btnColor)
this.Color();
if(e.getSource()==btnOutput)
this.Ouput();
}
public static void main(String[] args)
{
new _9();
}
}

E. Java編寫圖形用戶界面程序

運行如圖

importjava.awt.*;
importjava.awt.event.*;
importjavax.swing.*;

{

JTextFieldjtf;
JPasswordFieldjpf;
publicRegDemo(){
//組件的創建,和布局安排
JPaneljpc=newJPanel();//默認流式布局
JPaneljp1=newJPanel(newGridLayout(2,2,5,10));//網格布局
jp1.setBorder(BorderFactory.createTitledBorder("用戶注冊"));
JLabeljl1=newJLabel("用戶名:");
jtf=newJTextField(10);
JLabeljl2=newJLabel("密碼:");
jpf=newJPasswordField(10);
jpf.setEchoChar('*');//用*號來隱藏密碼的顯示
jp1.add(jl1);jp1.add(jtf);
jp1.add(jl2);jp1.add(jpf);
jpc.add(jp1);
add(jpc);

JButtonjb1=newJButton("提交");
jb1.addActionListener(this);
jb1.setActionCommand("yes");
JButtonjb2=newJButton("取消");
jb2.addActionListener(this);
jb2.setActionCommand("no");
JPaneljp2=newJPanel();
jp2.add(jb1);jp2.add(jb2);
add(jp2,BorderLayout.SOUTH);
setTitle("用戶注冊界面");
setSize(280,280);
setLocationRelativeTo(null);//窗口居中
setDefaultCloseOperation(EXIT_ON_CLOSE);//
setVisible(true);
}
publicstaticvoidmain(String[]args){
newRegDemo();
}
@Override
publicvoidactionPerformed(ActionEvente){
if(e.getActionCommand().equals("yes")){
Stringname=jtf.getText().trim();
Stringpwd=newString(jpf.getPassword());
if(name.equals("")||pwd.equals("")){
JOptionPane.showMessageDialog(this,"你還沒有輸入用戶名或者密碼");
}else{
JOptionPane.showMessageDialog(this,"注冊成功!用戶名"+name+",密碼"+pwd);
}
}else{
jtf.setText("");
jpf.setText("");
}
}
}

F. java編程實現一個學生信息管理系統的圖形界面

package 學生管理界面;

import java.awt.BorderLayout;
import java.awt.Checkbox;
import java.awt.CheckboxGroup;
import java.awt.Container;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;

//錄入的信息包括學號、姓名、性別、出生日期、是否聯合培養等
public class 學生信息圖形界面 extends JFrame implements ActionListener {

public 學生信息圖形界面() { //構造方法
//界面顯示問題
super("學生信息圖形界面");
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
setSize(320, 300);
setVisible(true);
Container content = getContentPane();

JPanel jp1 = new JPanel(); //創建一個面板

JLabel label = new JLabel("歡迎使用學生信息管理系統"); //歡迎界面的歡迎語句
label.setFont(new Font("楷體_GB2312", Font.BOLD, 20)); //設置顯示的字體

jp1.add(label); //將標簽添加到面板jp1中

JPanel jp2 = new JPanel(); //創建一個面板,用於擺放提示各種功能的標簽

JLabel label1 = new JLabel("請輸入學生的詳細資料:"); //輸入提示輸入的語言:
label1.setFont(new Font("楷體_GB2312", Font.BOLD, 18)); //設置顯示的字體

JLabel label2 = new JLabel("學 生 學 號:"); //提示各種輸入內容的標簽
label2.setFont(new Font("楷體_GB2312", Font.BOLD, 18)); //設置顯示的字體t
JTextField field1=new JTextField(10); //10為學號長度,可自行設定

JLabel label3 = new JLabel("學 生 姓 名:"); //提示輸入學生姓名的標簽
label3.setFont(new Font("楷體_GB2312", Font.BOLD, 18)); //設置顯示的字體
JTextField field2=new JTextField(10); //10為姓名長度,可自行設定

JLabel label4 = new JLabel("學 生 性 別: "); //提示輸入學生性別的標簽
label4.setFont(new Font("楷體_GB2312", Font.BOLD, 18)); //設置顯示的字體

CheckboxGroup group1 = new CheckboxGroup(); //創建一個復選框用於選擇某一功能

Checkbox check11 = new Checkbox("男",true,group1); //添加選項到復選框中
check11.setFont(new Font("楷體_GB2312", Font.BOLD, 18)); //設置顯示的字體
check11.addItemListener(new CheckHandler1(1)); //給相應復選框添加事件監聽器
Checkbox check12 = new Checkbox("女",false,group1); //添加選項到復選框中
check12.setFont(new Font("楷體_GB2312", Font.BOLD, 18)); //設置顯示的字體
check12.addItemListener(new CheckHandler1(2)); //給相應復選框添加事件監聽器

JLabel label5 = new JLabel("出 生 日 期:"); //提示輸入出生日期的標簽
label5.setFont(new Font("楷體_GB2312", Font.BOLD, 18)); //設置顯示的字體
JTextField field3=new JTextField("2000",3); //3為姓名長度,可自行設定
JLabel label51 = new JLabel("年");
label51.setFont(new Font("楷體_GB2312", Font.BOLD, 18)); //設置顯示的字體
JTextField field4=new JTextField("01",2); //2為姓名長度,可自行設定
JLabel label52 = new JLabel("月");
label52.setFont(new Font("楷體_GB2312", Font.BOLD, 18)); //設置顯示的字體
JTextField field5=new JTextField("01",2); //2為姓名長度,可自行設定
JLabel label53 = new JLabel("日");
label53.setFont(new Font("楷體_GB2312", Font.BOLD, 18)); //設置顯示的字體

JLabel label6 = new JLabel("聯合培養:"); //提示選擇聯合培養與否的標簽
label6.setFont(new Font("楷體_GB2312", Font.BOLD, 18)); //設置顯示的字體
CheckboxGroup group2 = new CheckboxGroup(); //創建一個復選框用於選擇某一功能

Checkbox check21 = new Checkbox("是",true,group2); //添加選項到復選框中
check21.setFont(new Font("楷體_GB2312", Font.BOLD, 18)); //設置顯示的字體
check21.addItemListener(new CheckHandler2(1)); //給相應復選框添加事件監聽器
Checkbox check22 = new Checkbox("否",false,group2); //添加選項到復選框中
check22.setFont(new Font("楷體_GB2312", Font.BOLD, 18)); //設置顯示的字體
check22.addItemListener(new CheckHandler2(2)); //給相應復選框添加事件監聽器
//添加組件到面板容器中
jp2.add(label1);
jp2.add(label2);
jp2.add(field1);
jp2.add(label3);
jp2.add(field2);
jp2.add(label4);
jp2.add(check11); jp2.add(check12);
jp2.add(label5);
jp2.add(field3);jp2.add(label51); jp2.add(field4);jp2.add(label52); jp2.add(field5);jp2.add(label53);
jp2.add(label6);
jp2.add(check21); jp2.add(check22);

content.add(jp1, BorderLayout.NORTH); //分別添加面板到容器中
content.add(jp2, BorderLayout.CENTER); //分別添加面板到容器中

}

public void actionPerformed(ActionEvent e) {
// 事件響應處理
}
class CheckHandler1 implements ItemListener //復選框鍵的事件響應類
{
private int sel;
CheckHandler1(int select)
{
sel = select;
}
public void itemStateChanged(ItemEvent e)
{
switch(sel)
{
case 1:method1();break; //調用選擇的相應功能的方法
case 2:method2();break; //調用選擇的相應功能的方法
}
}

private void method1() { //事件響應方法
}
private void method2() { // 事件響應方法
}
}
class CheckHandler2 implements ItemListener //復選框鍵的事件響應類
{
private int sel;
CheckHandler2(int select)
{
sel = select;
}
public void itemStateChanged(ItemEvent e)
{
switch(sel)
{
case 1:method1();break; //調用選擇的相應功能的方法
case 2:method2();break; //調用選擇的相應功能的方法
}
}

private void method1() { //事件響應方法
}
private void method2() { //事件響應方法
}
}

//測試
public static void main(String[] args) {
學生信息圖形界面 界面 = new 學生信息圖形界面();
界面.setVisible(true);
}
}

G. java編寫一個圖形界面程序

importjava.awt.*;
importjava.awt.event.*;
importjava.util.*;
importjavax.swing.*;
importjavax.swing.border.Border;


classMainFrameextendsJFrame{

=1L;

privateMap<String,Integer>sizes=newHashMap<String,Integer>();

privateMap<String,Integer>styles=newHashMap<String,Integer>();

privateMap<String,Integer>toppings=newHashMap<String,Integer>();

publicMainFrame(){

sizes.put("ExtraLarge",10);
sizes.put("Large",8);
sizes.put("Medium",5);
sizes.put("Small",3);

styles.put("DeepDish",20);
styles.put("Regular",10);
styles.put("ThinCrust",5);
styles.put("Chicago",3);

toppings.put("Cheese",8);
toppings.put("Tomato",7);
toppings.put("Peppers",6);
toppings.put("Peperoni",5);

this.setTitle("布局及事件處理");
this.setSize(450,350);
this.setLayout(newBorderLayout());
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

JLabellblTitle=newJLabel();
lblTitle.setText("PizzeriaJuno");
lblTitle.setFont(newFont("宋體",Font.BOLD,36));
lblTitle.setHorizontalAlignment(SwingConstants.CENTER);
this.add("North",lblTitle);

JPanelbodyPanel=newJPanel();
bodyPanel.setLayout(newGridLayout(2,1));
this.add("Center",bodyPanel);

JPanellistPanel=newJPanel();
listPanel.setLayout(newGridLayout(1,3));
listPanel.setSize(200,200);
bodyPanel.add(listPanel);

BorderlineBorder=BorderFactory.createLineBorder(Color.BLACK);

JPanelsizePanel=newJPanel();
sizePanel.setLayout(newBorderLayout());
listPanel.add(sizePanel);
JLabelsizeTitle=newJLabel();
sizeTitle.setText("Sizes");
sizePanel.add("North",sizeTitle);


JListsizeList=newJList(sizes.keySet().toArray());
sizeList.setSize(100,100);
sizeList.setBorder(lineBorder);
sizeList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
sizePanel.add(sizeList);

JPanelstylePanel=newJPanel();
stylePanel.setLayout(newBorderLayout());
listPanel.add(stylePanel);
JLabelstyleTitle=newJLabel();
styleTitle.setText("Styles");
stylePanel.add("North",styleTitle);
JListstyleList=newJList(styles.keySet().toArray());
styleList.setSize(100,100);
styleList.setBorder(lineBorder);
styleList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
stylePanel.add(styleList);

JPaneltoppingPanel=newJPanel();
toppingPanel.setLayout(newBorderLayout());
listPanel.add(toppingPanel);
JLabeltoppingTitle=newJLabel();
toppingTitle.setText("Toppings");
toppingPanel.add("North",toppingTitle);
JListtoppingList=newJList(toppings.keySet().toArray());
toppingList.setSize(100,100);
toppingList.setBorder(lineBorder);
toppingPanel.add(toppingList);

JTextAreatxtResult=newJTextArea();
txtResult.setEditable(false);
bodyPanel.add(txtResult);

JPanelbottomPanel=newJPanel();
bottomPanel.setLayout(newGridLayout(1,3));
this.add("South",bottomPanel);

JLabellabel1=newJLabel("Clicktocompleteorder");
bottomPanel.add(label1);

JButtonbtnRingUp=newJButton("Ringup");
btnRingUp.addActionListener(newActionListener(){

@Override
publicvoidactionPerformed(ActionEvente){



if(sizeList.getSelectedValue()==null){
JOptionPane.showMessageDialog(MainFrame.this,"Pleaseselectsize.");
return;
}

if(styleList.getSelectedValue()==null){
JOptionPane.showMessageDialog(MainFrame.this,"Pleaseselectstyle.");
return;
}

if(toppingList.getSelectedValue()==null){
JOptionPane.showMessageDialog(MainFrame.this,"Pleaseselecttopping.");
return;
}

floattotal=0;

Stringsize=sizeList.getSelectedValue().toString();
total+=sizes.get(size);

Stringstyle=styleList.getSelectedValue().toString();
total+=styles.get(style);

Stringresult=size+"Pizza,"+style+"Style";

Object[]toppings=toppingList.getSelectedValues();
for(Objecttopping:toppings){
result+=" +"+topping.toString();
total+=MainFrame.this.toppings.get(topping.toString());
}

result+=" Total:"+total;

txtResult.setText(result);
}
});
bottomPanel.add(btnRingUp);

JButtonbtnQuit=newJButton("Quit");
btnQuit.addActionListener(newActionListener(){

@Override
publicvoidactionPerformed(ActionEvente){
MainFrame.this.dispose();
}
});
bottomPanel.add(btnQuit);
}

}

publicclassApp{

publicstaticvoidmain(String[]args){


MainFramemainFrame=newMainFrame();
mainFrame.setVisible(true);

}

}

H. java怎麼實現圖形化界面

java圖形化界面還是有很多內容要學習的,可以參考 如下實例:

publicclassTestextendsJFrame{
MyPanelmp=null;
publicstaticvoidmain(String[]args){
//TODOAuto-generatedmethodstub
Testjf=newTest();
}
publicTest(){
mp=newMyPanel();
this.add(mp);
//設置標題
this.setTitle("繪圖");
//設置窗體大小
this.setSize(400,300);
//設置窗體的位置
this.setLocation(100,100);
//限制窗體的大小
this.setResizable(false);
//關閉窗體時,同時退出java虛擬機
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//顯示窗體
this.setVisible(true);
}
}
//定義一個MyPanel(我自己的面板,用於繪圖和實現繪圖區域)
classMyPanelextendsJPanel
{
//覆蓋JPanel的paint方法
//Graphics是繪圖的重要類,可以把它理解成一隻畫筆
publicvoidpaint(Graphicsg)
{
//1。調用父類函數完成初始化
super.paint(g);
////畫圓
//g.drawOval(100,100,20,20);
////畫直線
//g.drawLine(50,150,150,200);
////畫矩形邊框
//g.drawRect(150,150,30,40);
//
////設置顏色。默認為黑色
//g.setColor(Color.blue);
////填充矩形
//g.fillRect(10,10,20,30);
//畫弧形
g.drawArc(200,10,100,150,120,-80);
//在面板上畫圖片
Imageim=Toolkit.getDefaultToolkit().getImage(Panel.class.getResource("圖片路徑"));
//顯示圖片
g.drawImage(im,10,10,200,180,this);
//畫字
g.setColor(Color.red);
g.setFont(newFont("華文彩雲",Font.BOLD,20));
g.drawString("要寫的字",80,220);
}
}
閱讀全文

與java圖形界面教程相關的資料

熱點內容
cnc編程程序走不了g代碼不正確 瀏覽:772
轉轉app賣家怎麼收錢 瀏覽:883
app綁定微信支付讓拒是怎麼回事 瀏覽:568
radan編程 瀏覽:52
高清pdf電子書 瀏覽:339
騰訊的伺服器用什麼處理器 瀏覽:405
安卓開發如何配置 瀏覽:848
門戶網站整站源碼 瀏覽:613
如何使用伺服器gpu 瀏覽:874
男主到全是女人的世界 瀏覽:345
泰國女同電影 瀏覽:95
干貨考試壓力大送你解壓神技 瀏覽:416
伺服器怎麼找到列印機 瀏覽:803
單片機的浮點運算 瀏覽:380
phpsmarty是干什麼 瀏覽:333
智能控制模糊控制及演算法的論文 瀏覽:612
畫單片機最小系統 瀏覽:830
外包程序員35歲以後干什麼 瀏覽:109
java怎麼重新編譯class文件 瀏覽:571
pythonweb開發與介面測試用例 瀏覽:396