導航:首頁 > 編程語言 > javaswing圖形界面開發與案例

javaswing圖形界面開發與案例

發布時間:2023-09-01 15:35:55

java編程採用圖形界面實現兩個內容的交換,圖形界面如下圖

以下是一個簡單的Java GUI程序,可以實現兩個內容(字元串、圖片等)之間的交換:

Copy code
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class SwapContent extends JFrame implements ActionListener {
private JLabel label1, label2;
private JButton swapBtn;

public SwapContent() {
// 設置窗口大小和標題
setSize(400, 300);
setTitle("Swap Content Demo");

// 創建標簽和按鈕模喚
label1 = new JLabel("Content A");
label2 = new JLabel("Content B");
swapBtn = new JButton("Swap");

// 設置標簽和按鈕的位置和大小
label1.setBounds(50, 50, 100, 30);
label2.setBounds(200, 50, 100, 30);
swapBtn.setBounds(150, 150, 100, 30);

// 將標簽和按鈕添加到窗口中
add(label1);
add(label2);
add(swapBtn);

// 注冊按鈕的事件監聽器
swapBtn.addActionListener(this);

// 設置窗口的默認關閉方式
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}

@Override
public void actionPerformed(ActionEvent e) {
// 獲取標簽的內容
String temp = label1.getText();
label1.setText(label2.getText());
label2.setText(temp);
}

public static void main(String[] args) {
// 創建窗口對象並顯示
SwapContent sc = new SwapContent();
sc.setVisible(true);
}
}
該程序創建了一個窗口,包括兩個標簽(label1和label2)和一個按鈕(swapBtn)。當用戶點擊按鈕時,程序會交換label1和label2的內容。

在程序的actionPerformed方法中,程序將label1和label2的內容交換。具體實現是,首先使用旦冊凱label1.getText()獲取label1的內容,並將其保存到一個臨時變數temp中;然後,將label1的內容設置為label2的內容,將label2的內容設置為temp的姿裂值。這樣,label1和label2的內容就被互換了。

在main方法中,程序創建了SwapContent對象,並將其顯示出來。程序運行後,用戶可以在窗口中交換label1和label2的內容。

② 用Java語言設計一個界面,

  1. 首先:採用什麼技術實現

java語言可以使用awt 和swing等技術實現圖形界面

推薦使用Swing,因為Swing比AWT更專業,更漂亮,組件更豐富,功能更強大。


2. 其次:分析採用什麼布局

邊界布局BorderLayout,配合表格布局GridLayout,既簡單又美觀


3. 最後:分析需求中需要用的組件

學生姓名 學號 顯示信息 需要用到文本框JTextField

單選按鈕 需要用到組件JRadioButton

復選框 需要用到組件JCheckBox

組合框 需要用到組件JComboBox


圖片效果

//導入所需要的包
importjava.awt.event.*;
importjavax.swing.border.*;
importjavax.swing.*;
importjava.awt.*;
{//寫一個類繼承自JFrame窗體
//定義組件
=1L;
privateJPanelcontentPane;
privateJTextFieldtfName,tfNum,allInfo;
privateJRadioButtonrb1,rb2;
privateJCheckBoxcb1,cb2,cb3;
privateJComboBox<String>t1,t2,t3;
publicstaticvoidmain(String[]args){
EventQueue.invokeLater(newRunnable(){
publicvoidrun(){
try{
ClassFrameframe=newClassFrame();//創建一個窗口實例
frame.setVisible(true);//讓該窗口實例可見
}catch(Exceptione){
e.printStackTrace();
}
}
});
}
/**
*窗口屬性的設置,內部組件的初始化
*/
publicClassFrame(){
setTitle("選課ing...");//標題
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//設置關閉是退出JVM
setSize(450,339);//設置窗體大小
setLocationRelativeTo(null);//窗體居中
contentPane=newJPanel();//內容面板
contentPane.setBorder(newEmptyBorder(5,5,5,5));
contentPane.setLayout(newBorderLayout(0,0));//設置布局
setContentPane(contentPane);
JPanelpanel=newJPanel(newGridLayout(5,1,5,10));//5行1列的表格布局
panel.setBorder(newTitledBorder(null,"",TitledBorder.LEADING,TitledBorder.TOP,null,null));
contentPane.add(panel,BorderLayout.CENTER);//給panel添加邊框
JPanelpanel_1=newJPanel();
panel.add(panel_1);
JLabellabel=newJLabel("姓名");
panel_1.add(label);
tfName=newJTextField();
panel_1.add(tfName);
tfName.setColumns(10);
JLabellabel_2=newJLabel("學號");
panel_1.add(label_2);
tfNum=newJTextField();
tfNum.setColumns(10);
panel_1.add(tfNum);
rb1=newJRadioButton("男");
panel_1.add(rb1);
rb1.setSelected(true);//設置單選按鈕中,默認選擇的按鈕
rb2=newJRadioButton("女");
panel_1.add(rb2);
ButtonGroupbts=newButtonGroup();//單選按鈕需要加入同一個ButonGroup中才能生效
bts.add(rb1);
bts.add(rb2);
JPanelpanel_2=newJPanel();
panel.add(panel_2);
cb1=newJCheckBox("高等數學");
panel_2.add(cb1);
t1=newJComboBox<String>();
t1.setModel(newDefaultComboBoxModel<String>(newString[]{"林老師","趙老師","孫老師"}));
panel_2.add(t1);
JPanelpanel_3=newJPanel();
panel.add(panel_3);
cb2=newJCheckBox("世界經濟");
panel_3.add(cb2);
t2=newJComboBox<String>();
t2.setModel(newDefaultComboBoxModel<String>(newString[]{"張老師","劉老師"}));
panel_3.add(t2);
JPanelpanel_4=newJPanel();
panel.add(panel_4);
cb3=newJCheckBox("音樂賞析");
panel_4.add(cb3);
t3=newJComboBox<String>();
t3.setModel(newDefaultComboBoxModel<String>(newString[]{"王老師","周老師"}));
panel_4.add(t3);
JPanelpanel_5=newJPanel();
panel.add(panel_5);
JButtonjbOk=newJButton("確定");
panel_5.add(jbOk);
JButtonjbRest=newJButton("重填");
panel_5.add(jbRest);
JPanelpanelSouth=newJPanel();
contentPane.add(panelSouth,BorderLayout.SOUTH);
JLabellabe=newJLabel("選課信息");
labe.setHorizontalAlignment(SwingConstants.LEFT);
panelSouth.add(labe);
allInfo=newJTextField();
allInfo.setColumns(30);
panelSouth.add(allInfo);
JPanelpanelNorth=newJPanel();
contentPane.add(panelNorth,BorderLayout.NORTH);
JLabellabelTitle=newJLabel("學生選課界面");
labelTitle.setForeground(Color.DARK_GRAY);
labelTitle.setFont(newFont("宋體",Font.BOLD,20));
panelNorth.add(labelTitle);

//給確定按鈕添加事件處理代碼
jbOk.addActionListener(newActionListener(){
publicvoidactionPerformed(ActionEvente){
StringBuilderinfo=newStringBuilder();
Stringname=tfName.getText();
Stringnum=tfNum.getText();
Stringsex;
if(rb1.isSelected()){
sex="男";
}else{
sex="女";
}
info.append(name+num+sex);
if(cb1.isSelected()){
Stringc=cb1.getText();
Stringt=t1.getSelectedItem().toString();
info.append(""+c+t);
}
if(cb2.isSelected()){
Stringc=cb2.getText();
Stringt=t2.getSelectedItem().toString();
info.append(""+c+t);

}
if(cb3.isSelected()){
Stringc=cb3.getText();
Stringt=t3.getSelectedItem().toString();
info.append(""+c+t);
}
allInfo.setText(info.toString());//把學生信息和選課信息放到文本框
}
});
//給重填按鈕設置事件處理代碼
jbRest.addActionListener(newActionListener(){
publicvoidactionPerformed(ActionEvente){
tfName.setText("");
tfNum.setText("");
rb1.setSelected(true);
cb1.setSelected(false);
t1.setSelectedIndex(0);
cb2.setSelected(false);
t2.setSelectedIndex(0);
cb3.setSelected(false);
t3.setSelectedIndex(0);
allInfo.setText("");
}
});
}
}

③ java swing界面設計

GUI圖形界面設計的重點是布局

SWING也是採用AWT的布局方式,進行布局管理的。(實現LayoutManager介面的方法,來進行管理布局,API中已有實現類,我們通常只需要指定實現類,而不需要自己重寫方法)


常用的布局有絕對布局, 邊界布局BorderLayout,流布局FlowLayout,表格布局GridLayout。

JFrame等重量級組件,默認布局是邊界布局,JPanel輕量級組件,默認布局是流布局


  1. 優點:充分的自定義,充分的自由,可以寫出漂亮的 ,細致的界面

  2. 缺點:絕對布局在不同的操作系統下,會有一些不同程度的變化,導致界面變形,甚至組件重疊等。在同一操作系統下,窗口放大縮小,界面也會變形

  3. 絕對布局的範例


    ④ JavaSwing圖形界面開發與案例詳解的作品目錄

    第1章JavaSwing概述
    1.1什麼是JavaSwing
    1.1.1Swing的發展史
    1.1.2Swing的功能
    1.1.3Swing的特性
    1.2.1avaSwing的包結構
    1.3一個JavaSwing程序實例
    1.4本章小結
    1.5本章習題
    第2章如何使用IDE開發Swing程序
    2.1如何利用Eclipse開發Swing程序
    2.2如何利用JBuilder開發Swing程序
    2.3如何利用NetBeans開發Swing程序
    2.4本章小結
    2.5本章習題
    第3章JavaSwirlg組件基礎
    3.1Swing組件類的層次
    3.2Window類
    3.2.1頂層容器類和包含層次
    3.2.2在頂層容器中添加組件
    3.2.3在頂層容器中添加菜單欄
    3.3JComponent類
    3.4本章小結
    3.5本章習題
    第4章如何使用標簽和按鈕組件
    4.1如何使用標簽
    4.2如何使用按鈕
    4.2.1如何使用普通按鈕
    4.2.2如何使用單選按鈕
    4.2.3如何使用復選框
    4.2.4按鈕組件的實例應用
    4.3本章小結
    4.4本章習題
    第5章如何使用布局管理器組件
    5.1布局管理器概述
    5.2布局管理器的種類
    5.2.1BorderLayout
    5.2.2FlowLayout
    5.2.3GridLayout
    5.2.4GridBagLayout
    5.2.5CardLayout
    5.2.6BoxLayout
    5.2.7SpringLayout
    5.2.8GroupLayout
    5.3自定義布局管理器的創建
    5.4本章小結
    5.5本章習題
    第6章如何使用面板組件
    6.1如何使用JPanel
    6.2如何使用JScrollPane
    6.3如何使用JSplitPane
    6.4如何使用JTabbedPane
    6.5如何使用JIntemalFrame
    6.6如何使用JLayeredPane
    6.7如何使用JRootPane
    6.8本章小結
    6.9本章習題
    第7章Swirlg事件處理機制
    7.1Swing事件處理機制概述
    7.2Swing中的監聽器
    7.2.1事件處理的過程與步驟
    7.2.2匿名類方式處理事件
    7.2.3適配器類
    7.2.4Swing所支持的事件監聽器
    7.2.5窗口事件的處理
    7.2.6動作事件的處理
    7.2.7焦點事件的處理
    7.3本章小結
    7.4本章習題
    第8章如何使用列表框和下拉列表框組件
    8.1如何使用列表框JList
    8.1.1使用數組方式創建列表框
    8.1.2使用Vector方式創建列表框
    8.1.3使用ListModel方式創建列表框
    8.1.4列表框選取事件的處理
    8.1.5列表框雙擊事件的處理
    8.2如何使用下拉列表框JComboBox
    8.2.1使用數組和Vector創建下拉列表框
    8.2.2使用ComboBoxModel創建下拉列表框
    8.2.3下拉列表框的事件處理
    8.3本章小結
    8.4本章習題
    第9章如何使用進度條、時間、滑塊和分隔條組件
    9.1如何使用進度條組件JProgressBar
    9.2如何使用時間組件Timer
    9.3如何使用滑塊組件JSlider
    9.4如何使用分隔條組件JSeparator
    9.5本章小結
    9.6本章習題
    第10章如何使用選取器組件
    10.1如何使用文件選取器JFileChooser
    10.1.1如何創建JFileChooser組件
    10.1.2如何創建JFileChooser對話框
    10.2如何使用顏色選取器JColorChooser
    10.3本章小結
    10.4本章習題
    第11章如何使用文本組件
    11.1文本組件概述
    11.2如何使用普通文本組件
    11.2.1如何使用JTextField
    11.2.2如何使用JPasswordField
    11.2.3如何使用JFormattedTextField
    11.3如何使用文本區組件
    11.4如何列印文本組件
    11.5本章小結
    11.6本章習題
    第12章如何使用窗口、對話框和JApplet組件
    12.1如何使用窗口組件
    12.2如何使用對話框組件
    12.3如何使用JApplet組件
    12.4本章小結
    12.5本章習題
    第13章如何使用菜單和工具條組件
    13.1如何使用菜單組件
    13.1.1菜單組件的類層次
    13.1.2如何創建菜單
    13.1.3如何處理菜單事件
    13.1.4如何響應鍵盤操作
    13.1.5如何使用彈出式菜單
    13.1.6如何使用菜單項的啟用和禁用功能
    13.1.7如何創建復選框菜單項
    13.1.8如何創建單選按鈕菜單項
    13.1.9如何定義個性化菜單
    13.1.10菜單組件的常用API
    13.2如何使用工具條組件
    13.2.1如何創建工具條
    13.2.2如何定義個性化工具條
    13.2.3工具條組件的常用API
    13.3本章小結
    13.4本章習題
    第14章如何使用表格組件
    14.1如何創建一個表格
    14.2如何把表格加入容器
    14.3如何設置表格列寬
    14.4如何創建表格模型
    14.5如何監聽數據變化
    14.6如何使用選擇器
    14.7如何使用編輯器和渲染器
    14.8如何使用自定義渲染器
    14.9如何為單元格指定文字說明
    14.10如何為表頭指定文字說明
    14.11如何使用排序和過濾
    14.12如何使用組合框作為編輯器
    14.13如何使用其他編輯器
    14.14如何使用編輯器驗證文本
    14.15如何列印表格
    14.16本章小結
    14.17本章習題
    第15章如何使用樹組件
    15.1如何創建樹
    15.2如何創建數據模型
    15.3如何處理節點事件
    15.3.1如何處理TreeModelEvent事件
    15.3.2如何處理TreeSelectionEvent事件
    15.4如何定義個性化樹
    15.5樹組件的常用API
    15.6本章小結
    15.7本章習題
    第16章如何使用Swing觀感器
    16.1如何設置程序的觀感
    16.2如何自定義觀感器
    16.3本章小結
    16.4本章習題
    第17章Swing與並發
    17.1多線程問題
    17.2初始線程
    17.3事件分派線程
    17.4工作線程
    17.4.1簡單的背景任務
    17.4.2擁有臨時結果的任務
    17.4.3取消背景任務
    17.4.4綁定屬性和狀態方法
    17.5本章小結
    17.6本章習題
    第18章Swing模型架構
    18.1傳統的MVC設計模式
    18.2可分離的模型架構
    18.3本章小結
    18.4本章習題
    第19章Swing的其他特性
    19.1如何在Swing組件中使用HTML
    19.2如何使用邊框
    19.2.1如何使用Swing中的邊框
    19.2.2如何創建自定義邊框
    19.2.3邊框組件的常用API
    19.3如何使用圖標
    19.4如何使用動作
    19.5如何支持輔助技術
    19.6如何使用焦點子系統
    19.7如何使用鍵綁定
    19.8如何在對話框中使用Modality
    19.9如何創建SplashScreen
    19.10如何使用SystemTray
    19.11如何使用Swing拖曳功能和數據傳輸
    19.12本章小結
    19.13本章習題
    第20章Swirlg實現通訊錄系統
    20.1通訊錄系統的軟體框架
    20.2通訊錄系統的登錄系統
    20.3通訊錄系統的主菜單系統
    20.3.1資料庫模塊的設計
    20.3.2信息界面模塊的設計
    20.3.3功能模塊的設計
    20.3.4其他模塊的設計
    20.3.5TabbedPane容器框架的設計
    20.3.6主菜單的設計
    20.4本章小結
    ……

    ⑤ 關於Java Swing 圖形界面的

    0. JavaSwing 簡介
    Java Swing 圖形界面開發簡介
    1. JavaSwing 布局管理器
    JavaSwing_1.1: FlowLayout(流式布局)
    JavaSwing_1.2: GridLayout(網格布局)
    JavaSwing_1.3: GridBagLayout(網格袋布局)
    JavaSwing_1.4: BoxLayout(箱式布局)
    JavaSwing_1.5: GroupLayout(分組布局)
    JavaSwing_1.6: CardLayout(卡片布局)
    JavaSwing_1.7: BorderLayout(邊界布局)
    JavaSwing_1.8: SpringLayout(彈性布局)
    JavaSwing_1.9: null(絕對布局)
    2. JavaSwing 基本組件
    JavaSwing_2.1: JLabel(標簽)
    JavaSwing_2.2: JButton(按鈕)
    JavaSwing_2.3: JRadioButton(單選按鈕)
    JavaSwing_2.4: JCheckBox(復選框)
    JavaSwing_2.5: JToggleButton(開關按鈕)
    JavaSwing_2.6: JTextField(文本框)
    JavaSwing_2.7: JPasswordField(密碼框)
    JavaSwing_2.8: JTextArea(文本區域)
    JavaSwing_2.9: JComboBox(下拉列表框)
    JavaSwing_2.10: JList(列表框)
    JavaSwing_2.11: JProgressBar(進度條)
    JavaSwing_2.12: JSlider(滑塊)
    3. JavaSwing 面板組件
    JavaSwing_3.1: JPanel(面板)
    JavaSwing_3.2: JScrollPane(滾動面板)
    JavaSwing_3.3: JSplitPane(分隔面板)
    JavaSwing_3.4: JTabbedPane(選項卡面板)
    JavaSwing_3.5: JLayeredPane(層級面板)
    4. JavaSwing 其他組件
    JavaSwing_4.1: JFrame(窗口)
    JavaSwing_4.2: JDialog、JOptionPane(對話框)
    JavaSwing_4.3: JFileChooser(文件選擇器)
    JavaSwing_4.4: JColorChooser(顏色選擇器)
    JavaSwing_4.5: JMenuBar(菜單欄)
    JavaSwing_4.6: JToolBar(工具欄)
    JavaSwing_4.7: JPopupMenu(彈出菜單)
    JavaSwing_4.8: JTable(表格)
    JavaSwing_4.9: JTree(樹)
    JavaSwing_4.10: JInternalFrame(內部窗口)
    5. JavaSwing 相關特性
    JavaSwing_5.1: 組件的位置和尺寸
    JavaSwing_5.2: 組件邊框(Border)
    JavaSwing_5.3: 事件處理
    JavaSwing_5.4: 多線程並發與線程安全
    JavaSwing_5.5: 拖拽功能
    JavaSwing_5.6: 系統托盤(System Tray)
    JavaSwing_5.7: 閃屏(Splash Screen)
    擴展:Java AWT/Swing 其他相關
    Java繪圖: 使用Graphics類繪制線段、矩形、橢圓/圓弧/扇形、圖片、文本
    Java圖片操作 — 圖片的讀取、繪制、縮放、裁剪、保存
    Java代碼截屏:使用 Java 代碼截取電腦屏幕並保存
    Java模擬滑鼠鍵盤輸入事件 — Robot 類
    Java操作桌面應用 — Desktop 類
    Java操作系統剪貼板(Clipboard)實現復制和粘貼

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

    }

    }

    ⑦ JavaSwing圖形界面開發與案例詳解的內容簡介

    全書共20章,其中第1~2章主要介紹有關Swing的基礎知識,包括Swing的基本概述、如何使用IDE開發Swing程序;第3~15章結合眾多實例和問題介紹最常用、最有用的組件及其應用方法,包括標簽和按鈕組件、布局管理器組件、面板組件、列表框組件、下拉列表框組件、進度條組件、時間組件、滑塊組件、分隔條組件、選取器組件、文本組件、窗口組件、對話框組件、JApplet組件、菜單組件、工具條組件、表格組件、樹組件以及組件的事件處理機制等;第16~19章主要講述有關Swing圖形開發的其他知識,包括觀感器、Swing線程與並發、模型與架構等。第20章通過一個綜合實例使讀者能夠在實際開發中理解和鞏固所學知識,從而提高綜合應用能力。
    《JavaSwing圖形界面開發與案例詳解》幾乎涵蓋了目前JavaSwing圖形開發必備的所有常用知識,擁有豐富的實例,且這些實例均來自於工程實踐,《JavaSwing圖形界面開發與案例詳解》適合Java程序語言的初學者閱讀,也可供具有一定編程經驗的初級編程人員參考。

閱讀全文

與javaswing圖形界面開發與案例相關的資料

熱點內容
文件包下載的安裝包在哪裡 瀏覽:811
90版本升級不送 瀏覽:186
工具箱英文 瀏覽:382
南翔嘉定編程課哪裡好 瀏覽:853
win10改變文件格式 瀏覽:475
linux中的物理地址和虛擬地址 瀏覽:493
有哪些app可以接游戲訂單 瀏覽:472
蘋果硬碟數據恢復要多少錢 瀏覽:394
js綁定下拉框資料庫數據 瀏覽:448
cad文件怎麼復制到另一個文件里邊 瀏覽:858
dxp鑽孔文件 瀏覽:631
iphone大悅城換機 瀏覽:538
找結婚對象上什麼網站 瀏覽:974
學生信息管理系統程序設計報告 瀏覽:640
微信文件怎麼刪除怎麼恢復 瀏覽:407
編程程序怎麼復制 瀏覽:467
文件更改 瀏覽:327
冰點文件路徑 瀏覽:730
軟體一點開文件就關閉 瀏覽:88
網路如何把人捧紅 瀏覽:961

友情鏈接