基础案例学习(工匠工坊案例)
案例學習
一、創建第一個過程
????????環境設置完成后,現在可以創建第一個Java GUI應用程序。在本教材中,使用“→”作為符號從選項中選擇菜單項。例如如圖所示,File→New Project,這意味著從File菜單,然后選擇New Project子菜單。要使用NetBeans創建你的第一個項目,可以從IDE中選擇File→New Project。
????????當選擇File→New Project時,將看到一個新項目對話框。
????????在圖中所示的New Project窗口中,Categories部分選擇Java with Maven→Java Application。然后,單擊“Next”按鈕,用戶將看到一個New Java Application對話框如圖:
????????New Java Application對話框將要求用戶確定項目名稱(Project Name)及其項目文件存放位置(Project Location)。在本例中,項目名稱為HelloJava;存放位置按照自己的意愿指定,如圖所示。完成所有工作后,只需單擊“Finish”按鈕來結束項目制作過程。
????????創建項目之后,下一步是通過右擊HelloJava→New→JFrame Form菜單命令來創建GUI應用程序(Form窗口應用程序),如圖所示。
????????在圖中,需要確定Form窗口的類名。在本例中,創建的類名為HelloJavaForm。然后,還需要確定創建JFrame Form類的包的名稱。Package下拉菜單中選擇 “com.mycompany.hellojava”,若之前的步驟項目名不是“HelloJava”,則下拉菜單里面的內容和本文不一樣,沒關系,直接選擇就是了。設置好一切后,選擇“Finish”按鈕結束步驟,將出現以下顯示。
????????圖中是已經添加到HelloJava項目的HelloJavaForm視圖。在HelloJavaForm的設計部分中,正方形框表示已創建的Form窗口。
????????創建Form窗口之后,需要考慮兩個部分,用戶需要知道,它們是Design(設計)和Source(源代碼)部分。兩個部分位于創建的Form窗口的上方,如上圖所示。Design部分用于設計Form窗口的外觀,而Source部分用于查看已創建的類(在本例中是HelloJavaForm類)中的代碼。通過單擊這兩個部分中的一個,用戶就可以從一個部分切換到另一個部分。
????????要向Form窗口添加屬性或控件,Java提供了一個包含窗體控件的選項板(工具箱)。此外,還有屬性部分,用于設置控件的屬性。在這種情況下,用戶將學習如何通過添加Label控件來操作Form窗口。
1. 屬性窗口
????????屬性窗口(Properties Window)是包含在面板中的窗體或控件的一部分,用于設置窗體或控件的屬性。要顯示“屬性窗口”可以右擊特定的窗體或控件,然后選擇“Properties”。另外,要顯示屬性窗口也可以通過選擇菜單Windows→IDE Tools→Properties來實現。
????????如圖所示是HelloJavaForm的屬性窗口。在這些窗口中,可以設置窗口的標題、窗口的大小和其他各種屬性。例如,在本例中,將使用“歡迎來到Java GUI的世界”設置Form窗口的標題。為此,在Form窗口的Properties窗口中選擇title,然后填寫所需的文本,如圖所示。
? ? ? ? ?圖中給出窗口標題設置的過程?!癙roperties”窗口中的“title”部分是為窗口填寫標題的位置。
要查看更改的效果,可以通過選擇菜單Run→Run Project或按F6鍵來運行程序。但是,在運行之前,建議程序員通過選擇“Run→Built Project”菜單來構建程序。這是為了確保在創建的程序中沒有錯誤。下面是運行后的應用程序顯示,如圖所示。
? ? ? ? 上圖顯示了運行后的應用程序。從圖中可以看出,Form窗口標題根據Properties窗口的指定進行了更改。
2. 面板編輯器
????????面板編輯器(Palette Editor)包含用于修改窗體外觀的控件圖標。面板編輯器中包含的控件分為幾個類別,即Swing Containers、Swing Controls、Swing Menus、Swing Windows、Swing Fillers、AWT、Beans和Java Presistencn。分組是基于每個控件的使用。
????????上圖顯示了在面板編輯器中找到的控件,當創建GUI應用程序來使用這些控件時,用戶可以簡單地單擊和拖動想要使用的控件,并將它們放到Form窗口上。與一開始就通過輸入代碼來實現自己的控制相比,這當然非常簡單。在本例中,將嘗試向HelloJavaFormForm窗口添加一個Label控件。它位于Swing Controls 類別中,該類別通常用于在GUI應用程序中顯示字符串和圖像。
????????如上圖所示,從面板編輯器中拖動Label控件后,下一步是替換Label上的文本。為此,用戶可以右擊Label,然后選擇Edit Text。此外,還可以通過Label控件的Proprties窗口替換它,然后在text部分中輸入所需的文本。
????????在圖的Properties窗口中,可以看到Label控件擁有的屬性。用戶可以設置背景顏色、背景顏色、文本、文本字體、文本對齊,等等。要設置標簽的字體,可以在“Properties”窗口中選擇“font”部分。
????????從圖中可以看出,Label使用“華文楷體”字體,字體樣式為Bold,字體大小為18。設置完字體后用鼠標拖動Label周圍的小正方形來調整Label的大小,使所有的字在Label中都可見
????????二、向窗體添加控件
????????Java中的GUI編程涉及幾個用于修改窗口外觀的控件,如前一節所述,這些控件位于Palette面板編輯器窗口中。在前面的案例中,向JFrame Form添加了一個Label控件。這里有許多關于JFrame Form的基本控件還沒有討論,比如文本框、按鈕、單選按鈕、復選框、列表、進度條等。
現在在HelloJavaFormForm窗口中再添加一個控件,在本例中,將在Form窗口上添加一個Button按鈕控件,如圖所示。按鈕控件是使用JButton類創建的。在這個小案例中,當單擊窗體上的按鈕時,程序將向用戶顯示一條消息。
????????向Form窗口添加Button控件的方法可以與添加以前的Label控件相同。要編輯一個Button的文本,可以通過在Button上右擊選擇Properties。從圖中可以看到,按鈕text被更改為“顯示信息”。對于添加到窗體中的每個控件,必須做的另一件事是設置控件的變量名。要更改Button控件的名稱可以通過右擊Button→Change Variable Name來實現更改變量名
????????從圖看出,添加的按鈕變量名是ShowMessage。變量名將用于從代碼中訪問控件的屬性。下一步是設置按鈕的Event事件,該事件將在按鈕被按下或單擊時觸發按鈕執行某些操作。可以通過雙擊添加的按鈕來創建Event,這樣源代碼部分就會顯示IDE生成的代碼。也可以在按鈕上右擊→Events→Action→actionPerformed。
?????????集成開發環境IDE會自動從Design設計模式跳轉到Source源代碼模式,
????????上面的代碼(其實是事件函數,先不用理解什么是“函數”)是由IDE自動生成的按鈕的事件。在這個函數中將放置一些代碼語句,這些代碼語句將在單擊按鈕時執行。在本例中,當按鈕單擊時,該程序將通過JOptionPane消息對話框顯示一條消息。為此,第一步是導入java swing。要開始手動寫第一行代碼了,使用下面的一行代碼import導入javax.swing包(package)里面的JOptionPane類
import javax.swing.JOptionPane;
????????之后,所要做的就是將下面的代碼添加到ShowMessage按鈕事件中。請注意“小括號”、“雙引號”、“分號”是英文輸入法狀態的英文字符。
JOptionPane.showMessageDialog(rootPane, "Hello,歡迎來到Java GUI的世界!!!");
?????????從圖可以看出,當單擊按鈕時,應用程序顯示消息“Hello,歡迎來到Java GUI的世界!!!”
案例1——身份展示器
????????在該案例中,將嘗試制作一個在Form窗口上顯示某人身份的應用程序,包括姓名、地址和電話號碼。只有單擊“Show”按鈕,身份才會出現。因此,當程序運行時,Form窗口上不顯示任何標識。
????????1、創建名為ShowIdentity的項目
File→New Project,然后在彈出的窗口選擇Java with Maven→Java Application,設置Project Name為“ShowIdentity”;
????????2、添加具有名稱Identity的JFrame Form
在“ShowIdentity”項目上右擊→New→JFrame Form,然后Class Name設置為“Identity”,Package的值從下拉菜單中選擇。
????????3、顯示身份,添加3個Label標簽控件,設置每個標簽用以下變量名字lblName、lblAddress、lblPhone。
從面板編輯器拖動3個Label控件放到JFrame Form窗口里面,然后分別在標簽上右擊→Change Variable Name來修改控件的變量名為lblName 、blAddress、lblPhone。
????????4、添加一個變量名為ShowButton的Button控件,然后用“Show Identity”作為該按鈕控件的text文本顯示值。
從面板編輯器中拖動一個Button控件到JFrame Form窗口,然后在該Button控件上右擊→Change Variable Name將其變量名設置為“ShowButton”并確認。接著在該Button控件上右擊→Properties,在打開的屬性窗口中將text的值設置為“Show Identity”。
????????(1)、將IDE從Design設計模式切換到Source源代碼模式;添加如下代碼到public Identity()對應的大括號里面。
lblName.setVisible(false);
lblAddress.setVisible(false);
lblPhone.setVisible(false);
????????上面的程序代碼是Identity類的構造方法中添加了3行設置標簽不可見的代碼,在程序運行時將首先調用該類的構造方法。
????????此時單擊“Show Identity”按鈕是沒有任何反應的,因為“Show Identity”按鈕還沒有添加事件代碼。
????????(2)、將IDE從Source源代碼模式切換到Design設計模式,
????????在設計模式下雙擊“Show Identity”按鈕或者在按鈕上右擊→Event→Action→actionPerformed,這將會使IDE從Design模式再次自動切換到Source模式,并且IDE自動添加了按鈕事件的方法體代碼。
????????在private void ShowButtonActionPerformed對應的大括號里面添加如下代碼:
? ? ? ? ????????lblName.setVisible(true);
? ? ? ????????? lblName.setText("姓名:迪麗娜扎");
? ? ? ? ????????lblAddress.setVisible(true);
? ? ? ????????? lblAddress.setText("地址:北京市烏魯木齊路八樓");
? ? ????????? ? lblPhone.setVisible(true);
? ? ? ????????? lblPhone.setText("電話:18888888888");
案例2——文本顏色更改器
????????在本例中,將嘗試更改添加到Form窗口中的標簽的文本顏色。該程序將顯示三所大學的名字。三所大學的名字將會在應用程序首次運行時出現。此外,當用戶按下“Red”、“Blue”和“Green”按鈕時,三所大學的文本顏色將變為紅色、藍色和綠色。
以下是創建此應用程序的步驟。
????????1、創建名為University的項目。
????????2、添加帶有University名稱的JFrame Form。
????????3、為了顯示三所大學的名稱,添加3個標簽,使用以下名稱設置標簽的變量名為lblUniversity1、lblUniversity2、lblUniversity3。
????????4、此外,在Form窗口上添加一個用作標題的標簽,并將text文本更改為“我的大學”。這個標簽的變量名不需要更改,因為它只是一個描述。
????????5、然后,添加3個具有以下變量名稱的控制按鈕為RedButton、BlueButton和GreenButton。將3個按鈕的text文字改為以下文字:“Red”、“Blue”、“Green”。
????????在本案例中,三所大學分別是清華大學(Tsinghua University)、北京大學(Beijing University)和黃河水利職業技術學院(Yellow River Conservancy Technical Institute)。要在應用程序首次運行時顯示這三所大學,你只需在University類的構造函數中添加以下語句。
????????lblUniversity1.setText("清華大學");
????????lblUniversity2.setText("北京大學");
????????lblUniversity3.setText("Yellow River Conservancy Technical Institute ");
????????運行程序后,單擊“Red”、“Blue”、“Green”按鈕,對應的標簽改變顏色的效果顯示如圖
任務3事件處理
????????事件處理是控件上的各種操作的應對方法,某一操作發生時要觸發相應的代碼來應對和處理該操作事件。例如,當做單擊按鈕操作時,就是在按鈕上發生了一次單擊事件,程序將通過對話框顯示一條消息。事件被調用為ActionPerformed事件。
????????當單擊“Show Message”按鈕時,第94行到第99行的語句將被執行。這些語句是當單擊“Show Message”按鈕時將采取的操作。換句話說,event事件是一個觸發控件執行特定動作的方法。
?案例3——學生姓名顯示器
????????在本例中,將為Button和Label創建一個事件。本例將演示如何在單擊按鈕時顯示第一個學生的名字,在單擊標簽時顯示第二個學生的名字。
以下是創建此應用程序的步驟。
????????1、創建一個名稱為Students的項目。
????????2、添加名稱為DisplayStudent的JFrame Form。
????????3、添加2個Label控件來顯示名稱,并使用以下名稱更改變量名lblStudent1和lblStudent2。此外,還添加了一個標簽控件,用作Form窗口的標題,并將其文本更改為“學生姓名顯示器”。此標簽的變量名不需要更改,因為它僅用作描述。
????????4、 添加一個變量名為ShowButton的按鈕,并更改文本為“Show Student 1”。
此外,還可以添加變量名為lblShow的標簽,并使用“Show Student 2”作為顯示文本。
要使顯示學生姓名的標簽在程序首次運行時不出現,必須在DisplayStudent的構造方法里面將兩個標簽的文本設置為空字符串。
????????此時單擊Show Student 1按鈕和Show Student 2標簽時沒有任何反應。像上一個案例一樣,需要添加事件代碼。給按鈕添加事件代碼想必學生已經掌握了;給Show Students 2標簽添加事件代碼的步驟是:
????????在該標簽上右擊→Event→Mous→MouseClicked;“Show Student 1”按鈕和“Show Student 2”標簽的事件
????????上面代碼中的第104行到第108行是按鈕ShowButton的事件,它將顯示學生的名字“王渤”,并將其設置為藍色。而第110到第114行是標簽lblShow的一個事件,它將顯示學生“黃寶強”的名字,并將其設置為紅色。
????????單但擊“Show Student 1”按鈕后,單擊“Show Student 2”標簽
案例4——圖像顯示小應用
????????本案例將展示如何在窗體上顯示圖像。單擊“Show Image”按鈕,圖像就會出現。
以下是創建此應用程序的步驟:
????????1、用名稱DisplayImage創建一個項目。
????????2、添加名為ImageViewer的JFrame Form。
????????3、要在窗體上顯示圖像,請添加一個帶有變量名稱lblImage的標簽。此外,還可以在Form窗口上添加一個用做標題的標簽,并更改文本為“圖像顯示小應用”。這個標簽的變量名不需要更改,因為它只是一個描述。
????????4、添加一個變量名為ShowButton的按鈕,并更改文本為“Show Image”。
在本例中,通過單擊lblImage標簽并拖動標簽周圍的小方塊來拉大lblImage的高度和寬度。并通過lbllmage右擊→properties屬性窗口為標簽提供邊框
? ? ? ? 要刪除lbllmage上的文本“jLabel2”字樣,可以右擊lblImage→Edit Text并刪除文本。用戶還可以通過在程序第一次運行時提供一個空字符串來實現這一點
? ? ? ? 此時單擊“Show Image”按鈕沒有任何反應,需要添加一個按鈕單擊事件?!癝how Image”按鈕的事件的代碼如下:
????????lblImage.setIcon(new javax.swing.ImageIcon("C:\\wy\\ww.png"));
?????????在上面的代碼中,可以看到Imagelcon類傳遞了一個字符串作為參數,該參數是顯示圖像的名稱和位置??梢钥吹絺鬟f的參數是C:\\wy\\ww.png。這意味著所顯示的圖像名稱為logo.png,并且它位于C:\\wy\\ww.png目錄中。用戶可以根據想展示的圖像的名稱和位置更改此參數,為自己計算機里面圖片的路徑。
總結
以上是生活随笔為你收集整理的基础案例学习(工匠工坊案例)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: charts漏斗图表_漏斗图 | ECh
- 下一篇: 多媒体计算机技术应用,谈谈多媒体计算机技