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