成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

生成Netbeans 6.5 GUI應用程序簡介

開發(fā) 后端
本入門教程講述如何創(chuàng)建簡單圖形用戶界面以及如何添加簡單后端功能。尤其介紹了如何為 Swing 窗體中的按鈕和字段行為編寫代碼。

我們將完成Netbeans 6.5 GUI 布局和設計工作并添加幾個按鈕和文本字段。這些文本字段用于接收用戶輸入和顯示程序輸出。這些按鈕用于啟動前端的內(nèi)置功能。我們創(chuàng)建的應用程序是一個非常簡單但功能完善的計算器。

有關(guān)更全面的Netbeans 6.5 GUI 生成器設計功能指南(包括各種設計功能的視頻演示),請參見在Netbeans 6.5IDE 中設計 Swing GUI。 

要學完本教程,您需要具備以下軟件和資源。

軟件或資源 要求的版本
NetBeans IDE 版本 6.5
Java Development Kit (JDK) 版本 6 或
版本 5

練習 1:創(chuàng)建項目

第一步是為要開發(fā)的應用程序創(chuàng)建 IDE 項目。我們將項目命名為 NumberAddition。

  1. 選擇“文件”>“新建項目”。或者,也可以單擊 IDE 工具欄中的“新建項目”圖標。
  2. 在“類別”窗格中,選擇 "Java" 節(jié)點。在“項目”窗格中,選擇“Java 應用程序”。單擊“下一步”。
  3. 在“項目名稱”字段中鍵入 NumberAddition,然后指定項目位置路徑(例如,在主目錄中)。
  4. (可選)選中“使用專用文件夾存儲庫”復選框,并指定庫文件夾的位置。有關(guān)此選項的詳細信息,請參見共享項目庫。
  5. 確?!霸O置為主項目”復選框處于選中狀態(tài)。
  6. 如果已選中“創(chuàng)建主類”復選框,請取消選中該復選框。
  7. 單擊“完成”。
練習 2:生成前端

要繼續(xù)生成界面,我們需要創(chuàng)建一個 Java 容器,以便放置所需的其他 GUI 組件。在此步驟中,我們將使用 JFrame 組件創(chuàng)建一個容器。我們將該容器放在新包中,該包將顯示在“源包”節(jié)點中。

創(chuàng)建 JFrame 容器

  1. 在“項目”窗口中,右鍵單擊 "NumberAddition" 節(jié)點并選擇“新建”>“JFrame 窗體”。
  2. 在“類名”中輸入 NumberAdditionUI。
  3. 在“包”中輸入 my.numberaddition。
  4. 單擊“完成”。

IDE 將在 NumberAddition 應用程序中創(chuàng)建 NumberAdditionUI 窗體和 NumberAdditionUI 類,然后在 GUI 生成器中打開 NumberAdditionUI 窗體。my.NumberAddition 包將替代缺省包。

添加組件:生成前端

接下來,我們將通過組件面板使用 JPanel 填充應用程序前端。然后,添加三個 JLabel、三個 JTextField 和三個 JButton。如果以前沒有用過 GUI 生成器,您可能會發(fā)現(xiàn)在 NetBeans IDE 中設計 Swing GUI 教程中有關(guān)組件放置的信息非常有用。

在拖動并放置完上述組件后,JFrame 應類似于以下屏幕快照。

包含三個 JLabel屏幕快照

如果在 IDE 右上角未看到“組件面板”窗口,則選擇“窗口”>“組件面板”。

  1. 先從組件面板中選擇一個 JPanel,然后將其拖放到 JFrame 上。
  2. 在突出顯示該 JPanel 時,轉(zhuǎn)至“屬性”窗口,然后單擊 "Border" 旁邊的省略號 (...) 按鈕以選擇邊框樣式。
  3. 在 "Border" 對話框中,從列表中選擇“帶標題的邊框”,然后在“標題”字段中鍵入 Number Addition。單擊“確定”保存更改并退出該對話框。
  4. 現(xiàn)在,將會看到一個標題為 Number Addition 的空 JFrame,它與屏幕快照類似。按照上面的屏幕快照所示,添加三個 JLabel、三個 JTextField 和三個 JButton。
重命名組件

在該步驟中,我們將重命名剛添加到 JFrame 中的這些組件的顯示文本。

  1. 雙擊 jLabel1 并將文本屬性更改為 First Number。
  2. 雙擊 jLabel2 并將文本更改為 Second Number
  3. 雙擊 jLabel3 并將文本更改為 Result。
  4. 刪除 jTextField1 中的樣例文本??赏ㄟ^以下方法使顯示文本處于可編輯狀態(tài):單擊文本字段,稍等片刻,然后再次單擊文本字段??赡苄枰獙?jTextField1 調(diào)整為原始大小。對于 jTextField2jTextField3,重復此步驟。
  5. jButton1 顯示文本重命名為 Clear。(可以通過右鍵單擊按鈕并選擇“編輯文本”來編輯按鈕的文本。或者,也可以單擊按鈕,稍等片刻,然后再次單擊按鈕。)
  6. jButton2 顯示文本重命名為 Add
  7. jButton3 顯示文本重命名為 Exit

現(xiàn)在,完成的 GUI 應類似于以下屏幕快照:

完成的應用程序屏幕快照

練習 3:添加功能

在本練習中,我們將為 "Add"、"Clear" 和 "Exit" 按鈕添加功能。jTextField1jTextField2 框用于用戶輸入,jTextField3 用于程序輸出;我們要創(chuàng)建的應用程序是一個非常簡單的計算器。我們現(xiàn)在就開始吧。

使 "Exit" 按鈕正常工作

要為這些按鈕添加功能,必須為每個按鈕指定事件處理程序以響應事件。在本示例中,我們需要了解何時通過鼠標單擊或鍵盤按下了按鈕。因此,我們使用 ActionListener 來響應 ActionEvent。

  1. 右鍵單擊 "Exit" 按鈕。從彈出式菜單中選擇“事件”> "Action" > "ActionPerformed"。請注意,該菜單中還包含很多其他可響應的事件!在選擇 actionPerformed 事件時,IDE 自動在 "Exit" 按鈕中添加 ActionListener,并生成一種處理程序方法以處理偵聽程序的 actionPerformed 方法。
  2. IDE 將打開“源代碼”窗口并滾動至某一位置,在此將實現(xiàn)按下按鈕(通過鼠標單擊或鍵盤)時希望其執(zhí)行的操作。源代碼窗口應包含以下行:
    1. private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {  
    2.     //TODO: Add your handling code here:  
    3.                 } 
  3. 現(xiàn)在,我們將為希望 "Exit" 按鈕執(zhí)行的操作添加代碼。必須在以上代碼中鍵入 System.exit(0); 以替換 TODO 行。完成的 "Exit" 按鈕代碼應如下所示:
    1. private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {  
    2.     System.exit(0);  
    3.                 }  
    使 "Clear" 按鈕正常工作
  1. 單擊工作區(qū)域頂部的“設計”標簽以返回到窗體設計區(qū)域
  2. 右鍵單擊 "Clear" 按鈕 (jButton1)。從彈出式菜單中選擇“事件”> "Action" > "actionPerformed"。
  3. "Clear" 按鈕用于刪除 jTextField 中的所有文本。為此,將添加一些與以上代碼類似的代碼。完成的源代碼應如下所示:
    1. private void jButton1ActionPerformed(java.awt.event.ActionEvent evt){  
    2.     jTextField1.setText("");  
    3.     jTextField2.setText("");  
    4.     jTextField3.setText("");  
    5.                 } 

上面的代碼將所有三個 JTextField 中的文本更改為空,實際就是使用空白覆蓋現(xiàn)有文本。

使 "Add" 按鈕正常工作

"Add" 按鈕用于執(zhí)行三個操作:

  1. 它接受 jTextField1jTextField2 中的用戶輸入,并將輸入類型由字符串轉(zhuǎn)換為浮點。
  2. 然后,它將兩個數(shù)相加;最后,
  3. 將兩個數(shù)之和的類型轉(zhuǎn)換為字符串,并將其放在 TextField3 中。
我們現(xiàn)在就開始吧!
  1. 單擊工作區(qū)域頂部的“設計”標簽以返回到窗體設計區(qū)域。
  2. 右鍵單擊 "Add" 按鈕 (jButton2)。從彈出式菜單中選擇“事件”> "Action" > "actionPerformed"
  3. 我們將添加一些代碼以使 "Add" 按鈕正常工作。完成的源代碼應如下所示:
    1. private void jButton2ActionPerformed(java.awt.event.ActionEvent evt){  
    2.     // First we define float variables.  
    3.     float num1, num2, result;  
    4.     // We have to parse the text to a type float.  
    5.     num1 = Float.parseFloat(jTextField1.getText());  
    6.     num2 = Float.parseFloat(jTextField2.getText());  
    7.     // Now we can perform the addition.  
    8.     result = num1+num2;  
    9.     // We will now pass the value of result to jTextField3.  
    10.     // At the same time, we are going to  
    11.     // change the value of result from a float to a string.  
    12.     jTextField3.setText(String.valueOf(result));  }

程序已創(chuàng)建完畢,我們現(xiàn)在可以生成并運行該程序以查看其運行情況。

練習 4:運行程序

在 IDE 中運行程序:

  1. 選擇“運行”>“運行主項目”。
  2. 如果顯示的窗口通知您項目 NumberAddition 沒有設置主類,則應在同一窗口中選擇 "my.NumberAddition.NumberAdditionUI" 作為主類,然后單擊“確定”按鈕。

在 IDE 外部運行程序:

  1. 選擇“運行”>“清理并生成主項目”(Shift-F11) 以生成應用程序 JAR 文件。
  2. 通過使用系統(tǒng)的文件資源管理器或文件管理器,導航至 NumberAddition/dist 目錄。
  3. 雙擊 NumberAddition.jar 文件。

幾秒鐘后,將會啟動應用程序。

注意:如果在雙擊 JAR 文件時沒有啟動應用程序,請參見本文以了解在操作系統(tǒng)中設置 JAR 文件關(guān)聯(lián)的相關(guān)信息。

也可以通過命令行啟動應用程序。

通過命令行啟動應用程序:

  1. 在系統(tǒng)上,打開命令提示符或終端窗口。
  2. 在命令提示符中,轉(zhuǎn)至 NumberAddition/dist 目錄。
  3. 在命令行中,鍵入以下語句:
    1. java -jar  NumberAddition.jar 
事件處理的工作方式

本教程已介紹了如何響應簡單的按鈕事件。還可以讓應用程序響應很多其他事件。IDE 可以幫助您查找 GUI 組件可處理的可用事件列表:

  1. 返回至編輯器中的 NumberAdditionUI.java 文件。單擊“設計”標簽以在 GUI 生成器中查看 GUI 布局。
  2. 右鍵單擊任何 GUI 組件,然后從彈出式菜單中選擇“事件”。目前,僅瀏覽菜單以查看其中的內(nèi)容,而無需選擇任何內(nèi)容。
  3. 或者,也可以從“窗口”菜單中選擇“屬性”。在“屬性”窗口中,單擊“事件”標簽。在“事件”標簽中,可以查看和編輯與當前活動 GUI 組件關(guān)聯(lián)的事件處理程序。
  4. 可以讓應用程序響應按鍵、鼠標單擊、雙擊和三擊、鼠標移動、窗口大小以及焦點變化。可以從“事件”菜單中為所有這些內(nèi)容生成事件處理程序。最常用的事件是 Action 事件。(要了解事件處理的最佳做法,請參見 Sun 的 Java 事件教程。)

事件處理是如何工作的呢?每次從“事件”菜單中選擇事件時,IDE 都會自動創(chuàng)建一個所謂的事件偵聽程序,并將其與組件關(guān)聯(lián)。請完成以下步驟以查看事件處理的工作方式。

  1. 返回至編輯器中的 NumberAdditionUI.java 文件。單擊“源”標簽以查看 GUI 源代碼。
  2. 向下滾動并注意剛實現(xiàn)的方法 jButton1ActionPerformed()、jButton2ActionPerformed()jButton3ActionPerformed()。這些方法稱為事件處理程序。
  3. 現(xiàn)在,滾動至名為 initComponents() 的方法。如果未看到該方法,請查找顯示 Generated Code 的行;單擊該行旁邊的 + 號以展開折疊的 initComponents() 方法。
  4. 首先,請注意 initComponents() 方法周圍的藍色塊。此代碼是由 IDE 自動生成的,無法對其進行編輯。
  5. 現(xiàn)在,瀏覽 initComponents() 方法。此外,該方法還包含用于初始化 GUI 組件并將其放置在窗體上的代碼。在“設計”視圖中放置和編輯組件時,將會自動生成和更新該代碼。
  6. initComponents() 中,向下滾動至顯示以下內(nèi)容的位置:
    1. jButton3.setText("Exit");  
    2. jButton3.addActionListener(new java.awt.event.ActionListener() {  
    3.     public void actionPerformed(java.awt.event.ActionEvent evt) {  
    4.            jButton3ActionPerformed(evt);  
    5.     }  
    6.             }); 

    這是在 GUI 組件中添加事件偵聽程序?qū)ο蟮奈恢茫辉诒臼纠校瑢⒃?jButton3 中注冊 ActionListener。ActionListener 接口具有一個 actionPerformed 方法,該方法采用 ActionEvent 對象(只需調(diào)用 jButton3ActionPerformed 事件處理程序即可實現(xiàn))作為其參數(shù)?,F(xiàn)在,該按鈕將偵聽 action 事件。每次按下該按鈕時,都會生成 ActionEvent 并將其傳遞給偵聽程序的 actionPerformed 方法,而該方法又會執(zhí)行在該事件的事件處理程序中提供的代碼。

一般來說,要能夠進行響應,每個交互式 GUI 組件需要在事件偵聽程序中進行注冊,并且需要實現(xiàn)事件處理程序。正如您所看到的一樣,NetBeans IDE 可處理關(guān)聯(lián)事件偵聽程序的工作,因此,您可以集中精力實現(xiàn)應由事件觸發(fā)的實際業(yè)務邏輯。

【編輯推薦】

  1. 讓Eclipse和NetBeans共享同一個項目
  2. NetBeans 6.5 界面美化與字體設置
  3. Eclipse還是Netbeans
  4. 如何在NetBeans中連接MySQL數(shù)據(jù)庫
  5. 八大技術(shù)牛人點評NetBeans 6.5
責任編輯:彭凡 來源: netbeans.org
相關(guān)推薦

2009-05-27 14:31:53

NetBeansEclipsPHP

2011-05-24 10:30:31

PythonNetBeans ID

2011-03-31 13:15:18

BlackBerry

2009-06-09 16:01:36

NetBeansIDEjava

2011-06-14 14:57:06

QT Python GUI

2018-12-03 08:25:24

2019-02-11 09:35:04

Python應用程序Tornado

2023-12-10 14:43:30

PythonGUIeel

2010-02-03 15:58:53

Python應用程序

2023-10-07 09:37:53

2009-06-11 09:24:59

NetBeans入門

2022-09-29 10:11:13

命令Arch LinuxGUI

2012-11-28 11:14:39

IBMdW

2009-12-30 15:47:14

ADO 記錄集

2009-06-09 11:29:17

NetBeansjava

2021-05-26 13:34:21

Windows 10Linux GUI應用程序

2010-02-26 11:05:04

Linux Mono

2020-09-23 14:33:01

Golang桌面開發(fā)GUI

2012-06-07 09:15:14

ibmdw

2012-05-29 10:04:08

點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 日本不卡高字幕在线2019 | 宅女噜噜66国产精品观看免费 | 国产午夜精品久久久久免费视高清 | 亚洲国产一区二区三区, | 精品一二区 | 日韩淫片免费看 | 欧美一级高清片 | 久久久999免费视频 999久久久久久久久6666 | 一区二区三区在线播放 | 黄网站在线播放 | 欧美日韩久久精品 | 日韩欧美亚洲 | 国产精品成人av | 国外成人在线视频网站 | 欧美日韩国产一区二区三区 | 国产日产精品一区二区三区四区 | 亚洲免费三级 | 一区在线视频 | 午夜精品久久久久99蜜 | 国产在线一区观看 | 日韩中文在线视频 | 国产成人一区二区三区精 | 欧美一区二区三区视频在线 | 欧美一级二级三级视频 | 91精品国产色综合久久 | 51ⅴ精品国产91久久久久久 | 亚洲一区中文 | 亚洲一区二区三区视频在线 | 亚洲精品二区 | 精品久久香蕉国产线看观看亚洲 | 久久精品福利 | 欧美一级片中文字幕 | 91青娱乐在线 | 国产美女视频 | 97av在线| 高清一区二区三区 | 欧美理伦片在线播放 | 在线免费观看色 | 99在线观看视频 | 国产成人精品免费视频大全最热 | 亚洲欧美精品 |