java圖形用戶界面實(shí)驗(yàn)報(bào)告.doc
《java圖形用戶界面實(shí)驗(yàn)報(bào)告.doc》由會(huì)員分享,可在線閱讀,更多相關(guān)《java圖形用戶界面實(shí)驗(yàn)報(bào)告.doc(10頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
南京工程學(xué)院 實(shí) 驗(yàn) 報(bào) 告 課程名稱 JAVA基礎(chǔ) 實(shí)驗(yàn)項(xiàng)目名稱 圖形用戶界面設(shè)計(jì) 實(shí)驗(yàn)學(xué)生班級(jí) 實(shí)驗(yàn)學(xué)生姓名 學(xué) 號(hào) 同組學(xué)生姓名 無(wú) 實(shí)驗(yàn)時(shí)間 2012年11月 實(shí)驗(yàn)地點(diǎn) 實(shí)驗(yàn)成績(jī)?cè)u(píng)定 指導(dǎo)教師簽字 年 月 日 一、實(shí)驗(yàn)?zāi)康暮鸵? 1.目的:掌握java AWT及Swing組件的使用方法,包括窗口、框架、對(duì)話框、布局方式、面板、文本編輯器、按鈕、組合框等,合理利用委托事件處理模型,掌握不同組件,不同事件的事件處理方法,設(shè)計(jì)出能夠響應(yīng)事件的java圖形用戶界面。 2.要求:設(shè)計(jì)圖形用戶界面,事件處理,異常處理并彈出對(duì)話框,提示重新輸入信息。 二、實(shí)驗(yàn)題目 驗(yàn)證哥德巴赫猜想,添加圖形用戶界面 三、實(shí)驗(yàn)方法與步驟(需求分析、算法設(shè)計(jì)思路、流程圖等) 1.添加圖形用戶界面 import java.awt.*; import java.awt.event.*; import javax.swing.*; public class GDBH extends Frame implements ActionListener //窗口框架響應(yīng)單擊事件,利用awt組件設(shè)計(jì)框架 { private Button button; //按鈕 private TextField text1; //文本行 private TextArea text2; //文本區(qū) public GDBH() { super("驗(yàn)證哥德巴赫猜想"); //設(shè)置框架窗口標(biāo)題 this.setBounds(450, 200, 350, 400); //設(shè)置框架的位置和尺寸 this.setResizable(false); // 設(shè)置框架大小不可改變 this.setBackground(Color.lightGray); // 設(shè)置窗口背景顏色 this.setLayout(new FlowLayout()); // 默認(rèn)窗口流布局 中對(duì)齊 this.add(new Label("輸入一個(gè)整數(shù)")); text1=new TextField("",20); this.add(text1); button=new Button("驗(yàn)證哥德巴赫猜想"); this.add(button); button.addActionListener(this); //為按鈕注冊(cè)單擊事件監(jiān)聽(tīng)器,委托當(dāng)前對(duì)象處理事件 this.setLayout(new FlowLayout()); //默認(rèn)中對(duì)齊 text2=new TextArea(20,25); text2.setEditable(false); this.add(text2); this.setVisible(true); //設(shè)置組件可見(jiàn) this.addWindowListener(new WinClose()); // 為框架注冊(cè)窗口事件監(jiān)聽(tīng)器,委托WinClose對(duì)象處理事件 } 2.實(shí)現(xiàn)單擊事件和窗口事件監(jiān)聽(tīng)器接口 public void actionPerformed(ActionEvent e) //單擊事件處理方法,實(shí)現(xiàn)ActionListener接口 { String str =text1.getText(); //獲得文本行的字符串 try { long num = Long.parseLong(str); // 將字符串轉(zhuǎn)化成長(zhǎng)整形 text2.setText(yz(num)); } catch(NumberFormatException n) { JOptionPane.showMessageDialog(this, "\""+str+"\"字符串不能轉(zhuǎn)換成整數(shù),請(qǐng)重新輸入?。?); return; } } class WinClose implements WindowListener //實(shí)現(xiàn)窗口事件監(jiān)聽(tīng)器接口 { public void windowClosing(WindowEvent e) // 窗口關(guān)閉事件處理方法 { System.exit(0); //程序運(yùn)行結(jié)束 } public void windowOpened(WindowEvent e) {} public void windowClosed(WindowEvent e) {} public void windowIconified(WindowEvent e) {} public void windowDeiconified(WindowEvent e) {} public void windowActivated(WindowEvent e) {} public void windowDeactivated(WindowEvent e) {} } 3.異常處理 若文本行中的字符串不能轉(zhuǎn)化成長(zhǎng)整形,將彈出對(duì)話框“字符串不能轉(zhuǎn)換成整數(shù),請(qǐng)重新輸入??!";另外如果所輸入的整數(shù)為小于等于2或大于2小于等于5也會(huì)彈出一個(gè)對(duì)話框“輸入錯(cuò)誤!必須是大于2的偶數(shù)或大于5的奇數(shù)!!”(該窗口代碼設(shè)置在yz()函數(shù)中)。 try { long num = Long.parseLong(str); text2.setText(yz(num)); } catch(NumberFormatException n) { JOptionPane.showMessageDialog(this, "\""+str+"\"字符串不能轉(zhuǎn)換成整數(shù),請(qǐng)重新輸入!!"); 彈出對(duì)話框 return; } 四、實(shí)驗(yàn)原始紀(jì)錄(源程序、數(shù)據(jù)結(jié)構(gòu)等) 源程序如下 import java.awt.*; import java.awt.event.*; import javax.swing.*; public class GDBH extends Frame implements ActionListener { private Button button; private TextField text1; private TextArea text2; public GDBH() { super("驗(yàn)證哥德巴赫猜想"); this.setBounds(450, 200, 350, 400); this.setResizable(false); this.setBackground(Color.lightGray); this.setLayout(new FlowLayout()); this.add(new Label("輸入一個(gè)整數(shù)")); text1=new TextField("",20); this.add(text1); button=new Button("驗(yàn)證哥德巴赫猜想"); this.add(button); button.addActionListener(this); this.setLayout(new FlowLayout()); text2=new TextArea(20,25); text2.setEditable(false); this.add(text2); this.setVisible(true); this.addWindowListener(new WinClose()); } public static void main(String args[]) { new GDBH(); } public void actionPerformed(ActionEvent e) { String str =text1.getText(); try { long num = Long.parseLong(str); text2.setText(yz(num)); } catch(NumberFormatException n) { JOptionPane.showMessageDialog(this, "\""+str+"\"字符串不能轉(zhuǎn)換成整數(shù),請(qǐng)重新輸入!!"); return; } } public String yz(long num) { String str1 = ""; if(num>2&&num%2==0) { for (long i = 2;i<= num / 2; i++) { for(long j=num/2;j- 1.請(qǐng)仔細(xì)閱讀文檔,確保文檔完整性,對(duì)于不預(yù)覽、不比對(duì)內(nèi)容而直接下載帶來(lái)的問(wèn)題本站不予受理。
- 2.下載的文檔,不會(huì)出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請(qǐng)點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
9.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁(yè)顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開(kāi)word文檔。
- 特殊限制:
部分文檔作品中含有的國(guó)旗、國(guó)徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計(jì)者僅對(duì)作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- java 圖形 用戶界面 實(shí)驗(yàn) 報(bào)告
鏈接地址:http://m.appdesigncorp.com/p-9356317.html