![java課設(shè)計算器_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-7/3/85fd6b8d-656c-4597-9908-2e07371c8b3f/85fd6b8d-656c-4597-9908-2e07371c8b3f1.gif)
![java課設(shè)計算器_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-7/3/85fd6b8d-656c-4597-9908-2e07371c8b3f/85fd6b8d-656c-4597-9908-2e07371c8b3f2.gif)
![java課設(shè)計算器_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-7/3/85fd6b8d-656c-4597-9908-2e07371c8b3f/85fd6b8d-656c-4597-9908-2e07371c8b3f3.gif)
![java課設(shè)計算器_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-7/3/85fd6b8d-656c-4597-9908-2e07371c8b3f/85fd6b8d-656c-4597-9908-2e07371c8b3f4.gif)
![java課設(shè)計算器_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-7/3/85fd6b8d-656c-4597-9908-2e07371c8b3f/85fd6b8d-656c-4597-9908-2e07371c8b3f5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、存檔資料 成績: 華東交通大學(xué)理工學(xué)院課 程 設(shè) 計 報 告 書所屬課程名稱 Java語言程序設(shè)計 題 目 簡單計算器設(shè)計 分 院 電 信 分 院 專業(yè)班級 12通信工程1班 學(xué)號 20120210420112 學(xué)生姓名 指導(dǎo)教師 2014 年 6 月 20日 華東交通大學(xué)理工學(xué)院課程設(shè)計報告目錄第1章 計算器機(jī)要求與內(nèi)容. 3第2章 計算器設(shè)計. 4第3章 計算器程序代碼.14第4章 計算器測試.49第5章 課程設(shè)計心得.53第6章 參考文獻(xiàn).54第1章 計算器內(nèi)容及要求一 設(shè)計內(nèi)容:1. 實現(xiàn)基本的加減乘除法的運算;2實現(xiàn)常用的函數(shù)計算功能;3. 實現(xiàn)將系統(tǒng)時間在界面上顯示;4. 實現(xiàn)菜單
2、對計算器的關(guān)閉、開啟及設(shè)置運算法則的操作。二 設(shè)計要求1. 使用菜單控制計算器界面的顯示,關(guān)閉;2. 使用菜單控制運算的法則;3. 使用菜單顯示函數(shù)運算窗口及運算;4. 數(shù)據(jù)采用手工輸入方式;5. 對異常的數(shù)據(jù)進(jìn)行異常處理,比如1/0的情況。第2章 計算器設(shè)計一設(shè)計模式 采用MVC設(shè)計模式,將模型,視圖,控制分別單獨完成。在模型中將視圖,控制添加到其中,再分別完成視圖的,控制的程序。二結(jié)構(gòu)設(shè)計 在界面中分為四個視圖的組件,控制分為按鈕事件,菜單選擇事件,以及鍵盤輸入控制事件。如圖1模型時間布局組件操作模式布局組件函數(shù)運算組件結(jié)果布局組件按鈕事件菜單選擇事件鍵盤輸入事件菜單布局組件運算布局組件圖
3、1在界面的布局上采用網(wǎng)格布局,將分別裝填時間布局組件,操作模式布局組件,運算布局組件,結(jié)果布局組件。如圖3組件上的相對應(yīng)控件相應(yīng)的事件分別封裝按鈕事件,菜單項選擇事件,鍵盤輸入事件。選擇相應(yīng)的控件,產(chǎn)生對應(yīng)的響應(yīng)事件。各組件對應(yīng)控件的響應(yīng)事件對應(yīng)如圖2。運算布局組件結(jié)果布局組件按鈕事件菜單選擇事件鍵盤輸入事件菜單布局組件圖2函數(shù)運算組件圖3三代碼設(shè)計本程序共有六個包wgr.constant,wgr.entry, wgr.event,wgr.layout,wgr.otherlayout,wgr.thread。分別用來盛裝各個組件,如圖4。圖4(1)wgr.constant包中有一個Constan
4、t類用來盛放程序設(shè)計中用到的字符串常量。例如:加法,減法,乘法及運算符號等。 詳見代碼。(2)wgr.entry包中有個一Entry類,此類是程序的入口,也是程序的模型,所有的組件都加載到這里。此類中定義了兩個方法main和loadwidge。Loadwidge的方法獲取各個組件中的控件。然后在主方法中對獲得的控件添加對應(yīng)的事件處理機(jī)制。例如JButton的點擊事件,菜單選擇菜單項等。 詳見代碼。(3)wgr.event包中含有四個類分別是MyButtonLisener、MyKeyPress、MyMenu_1_Listner、MyMenu_2_listener。MyButtonLisener作
5、用是按鈕的點擊響應(yīng),MyKeyPress作用是鍵盤輸入數(shù)據(jù)控制的作用,防止非法的輸入,MyMenu_1_Listner的作用是對計算器菜單進(jìn)行選擇的響應(yīng),MyMenu_2_listener的作用是對運算模式菜單進(jìn)行選擇的響應(yīng),MyMenu_3_listener是對選擇運算函數(shù)的監(jiān)聽相應(yīng)。MyButtonLisener中對運算組件中的“運算”按鈕與返回結(jié)果組件中的“清除”按鈕進(jìn)行做對應(yīng)的相應(yīng)。此類中帶有一個MyButtonLisener的有參數(shù)構(gòu)造函數(shù),從Entry類中得到需要操作的控件,比如獲得輸入框的數(shù)據(jù),獲得運行模式等。繼承了ActionListener接口,實現(xiàn)了actionPerfor
6、med方法,在響應(yīng)“運算”按鈕時對輸入的數(shù)據(jù)進(jìn)行了判斷,判斷是否可以進(jìn)行運算,比如數(shù)據(jù)的不完整,在除法時不能除以0的情況進(jìn)行了處理。 詳見代碼。下面是點擊運行時對輸入的數(shù)據(jù)進(jìn)行判斷是否為空,當(dāng)不為空時再根據(jù)計算模式進(jìn)行計算。if (textField_shuru1.getText().toString() != null)&& (textField_shuru1.getText().toString() != null)當(dāng)有空時將有提示對話框else JOptionPane.showMessageDialog(jFrame, "輸入的數(shù)據(jù)不可以為空", &q
7、uot;警告",JOptionPane.OK_OPTION);在進(jìn)行除法的運算是,會判斷被除數(shù)是否為零,如果是會彈出一個提示對話框/運算除法時需要對輸入的數(shù)據(jù)進(jìn)行處理,判斷是否不能進(jìn)行運算if (simble.equals(Constant.DIVISION) if (shuru2 != 0.0) textField_jieguo.setText(String.valueOf(shuru1/ shuru2); else JOptionPane.showConfirmDialog(jFrame, "輸入有誤,不可以除以 0","提示", JOpt
8、ionPane.OK_OPTION);點擊“清空”按鈕時會將所有的數(shù)據(jù)清空else if (e.getSource().equals(button_clear) /將數(shù)據(jù)清空的按鈕textField_shuru1.setText(null);textField_shuru2.setText(null);textField_jieguo.setText(null); MyKeyPress是對輸入框輸入數(shù)據(jù)進(jìn)行了處理,阻止非法的輸入,此類繼承了KeyListener接口,實現(xiàn)了keyPressed方法,此類有一個MyKeyPress含有參數(shù)的構(gòu)造方法,用來獲得需要的控件。 詳見代碼。/構(gòu)造函數(shù),獲
9、得面板的需要進(jìn)行操作的控件public MyKeyPress(JFrame frame, JTextField textField_shuru1,JTextField textField_shuru2) this.frame = frame;this.textField_shuru1 = textField_shuru1;this.textField_shuru2 = textField_shuru2;對非法的輸入將彈出提示對話框,然后清除非法的輸入。if (KeyEvent.VK_0 <= e.getKeyChar() && e.getKeyChar() <= K
10、eyEvent.VK_9)| (e.getKeyChar() = KeyEvent.VK_BACK_SPACE)| (e.getKeyChar() = KeyEvent.VK_ENTER)| (e.getKeyChar() = KeyEvent.VK_PERIOD) else JOptionPane.showConfirmDialog(frame, "輸入有誤", "提示",JOptionPane.OK_CANCEL_OPTION); MyMenu_1_Listner是對計算器菜單進(jìn)行選擇的操作事件,此類繼承了ActionListener接口,實現(xiàn)act
11、ionPerformed了方法。對“開啟計算器”,“關(guān)閉計算器”,“退出”的菜單項進(jìn)行了實現(xiàn)。 詳見代碼。選擇“開啟計算器”時,就將運算模式組件,運算組件,返回結(jié)果組件的setVisible設(shè)為true實現(xiàn)“開啟計算器”功能。if (e.getSource().equals(menuitem_start) /將模板組件隱藏panel_2_method.setVisible(true);panel_3_commond.setVisible(true);panel_4_result.setVisible(true);menu.setVisible(true);menu2.setVisible(tr
12、ue);同理,單擊“關(guān)閉計算器”時,就將運算模式組件,運算組件,返回結(jié)果組件的setVisible設(shè)為false實現(xiàn)“關(guān)閉計算器”功能。選擇“退出”時,將退出程序,同時將獲取時間的線程中斷。/退出程序if (e.getSource().equals(menuItem_exit) TimeThread.setSTATE(false);jFrame.dispose(); MyMenu_2_listener是對計算器的運算法則進(jìn)行設(shè)置,該類繼承了ActionListener接口,實現(xiàn)actionPerformed了方法。該類有一個MyMenu_2_listener有參數(shù)的構(gòu)造方法,獲得需要操作的顯示
13、運算法則的控件及菜單項。 詳見代碼。MyMenu_3_listener是對計算器的函數(shù)運算進(jìn)行設(shè)置,該類繼承了ActionListener接口,實現(xiàn)actionPerformed了方法。該類有一個MyMenu_3_listener有參數(shù)的構(gòu)造方法,獲得需要操作菜單項。 詳見代碼。(4)wgr.layout包中是組件的布局,其中含有Commond_layout、Model_layout、MyMenu1、 MyMenu2、Result_layout 、Time_layout六個類的布局組件。Commond_layout是運行數(shù)據(jù)的組件,其中有JLabel,JTextField,JButton,JP
14、anel 詳見代碼。JPanel使用FlowLayout布局,將JLabel,JTextField,JButton加入JPanel中,效果如上圖。Model_layout是顯示運行模式的布局組件,Jpanel使用GridLayout的布局,其中有2個JLabel,分別是當(dāng)前“當(dāng)前操作模式:”和顯示運算法則的JLabel。 詳見代碼。MyMenu1、MyMenu2、MyMenu3都是菜單,MyMenu1是“計算器”菜單里面含有“開啟計算器”、“關(guān)閉計算器”、“退出”的菜單項。MyMenu2是“計算模式”菜單,里面含有“加法”、“減法”、“乘法”、“除法”的菜單項。菜單使用JMenu,菜單項使用J
15、MenuItem。MyMenu3是“函數(shù)”菜單,里面含有“sin(x)”、“cos(x)”、“tan(x)”、“l(fā)n(x)”、“sqrt(x)”的菜單項。菜單使用JMenu,菜單項使用JMenuItem。 詳見代碼。 Result_layout是顯示運算結(jié)果的布局組件,Jpanel使用FlowLayout的布局,Jpanel中加入JLabel、JTextField、JButton的控件。 詳見代碼。JLabel是“結(jié)果”的控件,JTextField用來顯示得到的結(jié)果,JButton是“清除”的按鈕,作用是將輸入的輸入與輸出的數(shù)據(jù)清空。Time_layout 是顯示時間的布局組件, Jpanel
16、使用FlowLayout的布局,Jpanel中加入兩個JLabel的控件。分別“顯示時間”,另一個是將系統(tǒng)的時間顯示在另一個JLabel上。 詳見代碼。 (5)wgr.otherlayout包中含有一個Hanshu_layout的類,該是是顯示函數(shù)運算的窗口,并且還有輸入框的鍵盤輸入監(jiān)聽事件。還對輸入的數(shù)據(jù)進(jìn)行的控制。以防止非法的數(shù)據(jù)輸入,運算產(chǎn)生錯誤。該類是根據(jù)獲得函數(shù)類型進(jìn)行相應(yīng)的運算。public void keyPressed(KeyEvent e) if (KeyEvent.VK_0 <= e.getKeyChar() && e.getKeyChar() <
17、;= KeyEvent.VK_9)| (e.getKeyChar() = KeyEvent.VK_BACK_SPACE)| (e.getKeyChar() = KeyEvent.VK_ENTER)| (e.getKeyChar() = KeyEvent.VK_PERIOD) if (e.getKeyChar() = KeyEvent.VK_PERIOD) else if (!field.getText().toString().equals(null)&& (e.getKeyChar() = KeyEvent.VK_ENTER) double d = Double.parseD
18、ouble(field.getText().toString();if (MyMenu_3_listener.getString() = Constant.F_Sin) field2.setText(String.valueOf(Math.sin(d).substring(0, 5);if (MyMenu_3_listener.getString() = Constant.F_Cos) field2.setText(String.valueOf(Math.cos(d).substring(0, 5);if (MyMenu_3_listener.getString() = Constant.F_
19、Tan) field2.setText(String.valueOf(Math.tan(d).substring(0, 5);if (MyMenu_3_listener.getString() = Constant.F_Sqrt) field2.setText(String.valueOf(Math.sqrt(d);if (MyMenu_3_listener.getString() = Constant.F_Log) field2.setText(String.valueOf(Math.log(d).substring(0, 5); else if (e.getKeyChar() = KeyE
20、vent.VK_BACK_SPACE) field.setText(null);field2.setText(null); else JOptionPane.showConfirmDialog(frame, "輸入有誤", "提示",JOptionPane.OK_CANCEL_OPTION);/ 如果輸入了非法的數(shù)據(jù),將非法輸入的數(shù)據(jù)刪除掉field.setText(field.getText().toString().substring(0,field.getText().toString().length() - 1);(6)wgr.thread包中
21、只含有一個TimeThread類,該類繼承了Thread。該類有一個TimeThread有參數(shù)的構(gòu)造方法,用來獲得Time_layou中的顯示系統(tǒng)時間的Jlabel。public TimeThread(JLabel label) jLabel = label;該類重寫了run方法,獲得系統(tǒng)的時間,將時間顯示獲得的jlabel上。public void run() super.run();while (true) /當(dāng)程序退出時,使此線程中斷if(isSTATE()jLabel.setText(time.format(new Date();else break;此類還有一個來獲取程序是否推退出的
22、的方法setSTATE,如果程序退出了,將會得到false,線程的run方法就會終止。public static boolean isSTATE() return STATE;public static void setSTATE(boolean sTATE) STATE = sTATE;第3章 計算器程序代碼(1)常量包:Constant.java代碼:(2)模型包,即入口包Entry.java代碼:(3)響應(yīng)事件包:MyButtonLisener. java按鈕響應(yīng)事件:MyKeyPress.java鍵盤輸入事件:MyMenu_1_Listner.java計算機(jī)菜單選擇事件:MyMenu_
23、2_listener.java操作模式菜單選擇事件:MyMenu_3_listenerjava操作函數(shù)運算選擇事件:(4)各個界面布局組件包:Commond_layout.java運算布局組件:Model_layout.java顯示運算模式布局組件:MyMenu1.java計算器菜單組件:MyMenu2.java運算模式菜單組件:MyMenu3.java函數(shù)運算菜單組件:Result_layout.java 運算結(jié)果布局組件:Time_layout.java 顯示時間布局組件:(5)函數(shù)運算包Hanshu_layout.java函數(shù)運算窗口:(6)獲取事件線程包:TimeThread.java
24、 獲取時間線程組件:Constant.java代碼: 回到程序目錄package wgr.constant;public class Constant / 菜單一的常量public static final String COUNTER="計算器"public static final String START="啟動計算器"public static final String CLOSE="關(guān)閉計算器"public static final String EXIT="退出" / 運算的常量,也是菜單2的常量pub
25、lic static final String MODEL="運算模式"public static final String ADDITION="加法"public static final String SUBDUCTION="減法"public static final String MULTIPLICATION="乘法"public static final String DIVISION="除法"/ 運算模式符號public static final String ADDITION_SY
26、MBOL="+"public static final String SUBDUCTION_SYMBOL=""public static final String MULTIPLICATION_SYMBOL="*"public static final String DIVISION_SYMBOL="/"/函數(shù)字符串public static final String FX="函數(shù)"public static final String F_Cos="Cos(X)"public
27、 static final String F_Sin="Sin(X)"public static final String F_Tan="Tan(X)"public static final String F_Log="Ln(X)"public static final String F_Sqrt="Sqrt(X)"public static final String F_Cos_SYMBOL="Cos("public static final String F_Sin_SYMBOL="
28、;Sin("public static final String F_Tan_SYMBOL="Tan("public static final String F_Log_SYMBOL="Ln("public static final String F_Sqrt_SYMBOL="Sqrt("Entry.java代碼: 回到程序目錄package wgr.entry;import java.awt.GridLayout;import java.awt.Toolkit;import java.awt.event.WindowAda
29、pter;import java.awt.event.WindowEvent;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JMenu;import javax.swing.JMenuBar;import javax.swing.JMenuItem;import javax.swing.JPanel;import javax.swing.JTextField;import wgr.constant.Constant;import wgr.even
30、t.MyButtonLisener;import wgr.event.MyKeyPress;import wgr.event.MyMenu_1_Listner;import wgr.event.MyMenu_2_listener;import wgr.event.MyMenu_3_listener;import wgr.layout.Commond_layout;import wgr.layout.Model_layout;import wgr.layout.MyMenu1;import wgr.layout.MyMenu2;import wgr.layout.MyMenu3;import w
31、gr.layout.Result_layout;import wgr.layout.Time_layout;import wgr.thread.TimeThread;/* * 采用MVC的設(shè)計方式 這是一個入口也是一個框架,將各個布局加載到這個框架中來, * * 菜單包括計算機(jī)菜單項組件,計算模式菜單的組件 * * 包含時間面板的組件,操作模式面板組件,命令面板的組件,返回數(shù)據(jù)面板的組件 * * 將各個組件的響應(yīng)事件放在WGR.EVENT的包中 MyWindowsListner 監(jiān)聽窗口的事件 MyButtonLisener 監(jiān)聽按鈕響應(yīng)的事件, * MyKeyPress 輸入框的鍵盤事件,
32、MyMenu_1_Listner MyMenu_2_listener 菜單的選擇事件. * * wgr.constant包中Constant存放一些常量 wgr.layout包中存放各個組件的布局文件 * * wgr.thread TimeThread 獲取系統(tǒng)時間的線程,將系統(tǒng)時間顯示在時間面板的組件中. */public class Entry private static JFrame frame;private static JMenuBar menuBar;private static JMenu menu1, menu2, menu3;private static JMenuIte
33、m menuitem_start, menuItem_close, menuItem_exit,menu_addition, menu_subduction, menu_multiplication, menu_division,menu_sin, menu_cos, menu_tan, menu_log, menu_sqrt;private static JPanel panel_1_time, panel_2_method, panel_3_commond,panel_4_result;private static JLabel label_time_data, label_mothod,
34、 label_model_symble;private static JButton button, button_clear;private static JTextField textField_shuru1, textField_shuru2,textField_jieguo;private static TimeThread timeThead;private static Time_layout time_layout;private static Model_layout model_layout;private static Commond_layout commond_layo
35、ut;private static Result_layout result_layout;private static MyMenu1 myMenu1;private static MyMenu2 myMenu2;private static MyMenu3 myMenu3;public static void main(String args) menuBar = new JMenuBar();menu1 = new JMenu(Constant.COUNTER);menu2 = new JMenu(Constant.MODEL);menu3 = new JMenu(Constant.FX
36、);/* * panel_1_time 時間面板組件 panel_2_method 運算模式面板組件 panel_3_commond * 輸入數(shù)據(jù)運算面板組件 panel_4_result 運算結(jié)果的面板組件 */panel_1_time = new JPanel();panel_2_method = new JPanel();panel_3_commond = new JPanel();panel_4_result = new JPanel();frame = new JFrame(Constant.COUNTER);frame.setSize(350, 320);frame.setLoca
37、tion(Toolkit.getDefaultToolkit().getScreenSize().width - 350) / 2,(Toolkit.getDefaultToolkit().getScreenSize().height - 320) / 2);frame.setResizable(false);frame.setLayout(new GridLayout(4, 1);/ 添加菜單1myMenu1 = new MyMenu1();menuBar.add(myMenu1.layout(menu1);/ 添加菜單2myMenu2 = new MyMenu2();menuBar.add
38、(myMenu2.layout(menu2);/ 添加菜單2myMenu3 = new MyMenu3();menuBar.add(myMenu3.layout(menu3);/ 添加菜單條frame.setJMenuBar(menuBar);/ 添加顯示時間組件time_layout = new Time_layout();frame.add(time_layout.layout(panel_1_time);/ 添加顯示操作模式組件model_layout = new Model_layout();frame.add(model_layout.layout(panel_2_method);/
39、 添加運算命令組件commond_layout = new Commond_layout();frame.add(commond_layout.layout(panel_3_commond);/ 添加返回結(jié)果組件result_layout = new Result_layout();frame.add(result_layout.layout(panel_4_result);menu2.setVisible(false);menu3.setVisible(false);panel_2_method.setVisible(false);panel_3_commond.setVisible(fal
40、se);panel_4_result.setVisible(false);frame.setVisible(true);/ 加載各個控件loadwidge();/ 窗口的監(jiān)聽事件frame.addWindowListener(new WindowAdapter() Overridepublic void windowClosing(WindowEvent e) super.windowClosing(e);TimeThread.setSTATE(false);frame.dispose(););/ 添加時間至標(biāo)簽timeThead = new TimeThread(label_time_dat
41、a);timeThead.start();/ 按鈕監(jiān)聽事件MyButtonLisener myButtonLisener = new MyButtonLisener(frame, button,button_clear, label_mothod, textField_shuru1, textField_shuru2,textField_jieguo);button.addActionListener(myButtonLisener);button_clear.addActionListener(myButtonLisener);/ 建立輸入框的輸入判斷事件MyKeyPress myKeyPr
42、ess = new MyKeyPress(frame, textField_shuru1,textField_shuru2);textField_shuru2.addKeyListener(myKeyPress);textField_shuru1.addKeyListener(myKeyPress);/ 添加計算機(jī)菜單監(jiān)聽事件MyMenu_1_Listner menu_1_Listner = new MyMenu_1_Listner(frame,panel_2_method, panel_3_commond, panel_4_result,menuitem_start, menuItem_cl
43、ose, menuItem_exit,menu2,menu3);menuitem_start.addActionListener(menu_1_Listner);menuItem_close.addActionListener(menu_1_Listner);menuItem_exit.addActionListener(menu_1_Listner);/ 添加運算模式菜單監(jiān)聽事件MyMenu_2_listener menu_2_listener = new MyMenu_2_listener(label_mothod,label_model_symble, menu_addition, me
44、nu_subduction,menu_multiplication, menu_division);menu_addition.addActionListener(menu_2_listener);menu_subduction.addActionListener(menu_2_listener);menu_multiplication.addActionListener(menu_2_listener);menu_division.addActionListener(menu_2_listener);/ 添加函數(shù)菜單監(jiān)聽事件MyMenu_3_listener menu_3_listener
45、= new MyMenu_3_listener(menu_sin,menu_cos, menu_tan, menu_log, menu_sqrt);menu_sin.addActionListener(menu_3_listener);menu_cos.addActionListener(menu_3_listener);menu_tan.addActionListener(menu_3_listener);menu_log.addActionListener(menu_3_listener);menu_sqrt.addActionListener(menu_3_listener);/ 獲得各
46、個組件中控件private static void loadwidge() / 獲得時間組件中的需要的控件label_time_data = time_layout.getLabel_time();label_mothod = model_layout.getLabel_model();label_model_symble = commond_layout.getLabel2();/ 獲取輸入框的控件textField_shuru1 = commond_layout.getTextField_shuru1();textField_shuru2 = commond_layout.getTextF
47、ield_shuru2();/ 獲取運算命令按鈕控件button = commond_layout.getButton();/ 獲取運算結(jié)果組件中的控件textField_jieguo = result_layout.getTextField_result();button_clear = result_layout.getButton_caler();/ 獲取兩個菜單的組件menu1 = myMenu1.getMenu();menu2 = myMenu2.getMenu();/ 獲取計算機(jī)菜單中的菜單項menuitem_start = myMenu1.getMenu_start();menu
48、Item_close = myMenu1.getMenu_close();menuItem_exit = myMenu1.getMenu_exit();/ 獲取運算模式菜單中的菜單項menu_addition = myMenu2.getMenuaddition();menu_subduction = myMenu2.getMenusubduction();menu_multiplication = myMenu2.getMenumultication();menu_division = myMenu2.getMenudivision();/ 取得函數(shù)菜單中的菜單項menu_sin = myMe
49、nu3.getMenu_sin();menu_cos = myMenu3.getMenu_cos();menu_tan = myMenu3.getMenu_tan();menu_log = myMenu3.getMenu_log();menu_sqrt = myMenu3.getMenu_sqrt();響應(yīng)事件包:MyButtonLisener.Java按鈕響應(yīng)事件: 回到程序目錄package wgr.event;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.
50、JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JTextField;import wgr.constant.Constant;/* * 響應(yīng)按鈕事件的類 * */public class MyButtonLisener implements ActionListener JFrame jFrame;JLabel label_simlble;JButton button_yunsuan, button_clear;JTextField textField_shuru1;JTextField textField_shuru2;JTextField textField_jieguo;public MyButtonLisener() /構(gòu)造函數(shù),獲得面板的需要進(jìn)行操作的控件public MyButtonLisener(JFrame frame, JButton button, JButton button2,JLabel label, JTextField textField, JTextField textField2,JTextFi
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 光伏工程勞務(wù)承包清包合同范本
- 小區(qū)車位租賃合同范本
- 四川藝術(shù)職業(yè)學(xué)院《運籌學(xué)概論》2023-2024學(xué)年第二學(xué)期期末試卷
- 黑龍江財經(jīng)學(xué)院《高等數(shù)學(xué)二》2023-2024學(xué)年第二學(xué)期期末試卷
- 海南熱帶海洋學(xué)院《現(xiàn)代管理數(shù)學(xué)方法》2023-2024學(xué)年第二學(xué)期期末試卷
- 太原工業(yè)學(xué)院《民間美術(shù)》2023-2024學(xué)年第二學(xué)期期末試卷
- 河北政法職業(yè)學(xué)院《復(fù)變函數(shù)與場論》2023-2024學(xué)年第二學(xué)期期末試卷
- 皖北衛(wèi)生職業(yè)學(xué)院《線性規(guī)劃》2023-2024學(xué)年第二學(xué)期期末試卷
- 杭州電子科技大學(xué)信息工程學(xué)院《理論與基礎(chǔ)應(yīng)用》2023-2024學(xué)年第二學(xué)期期末試卷
- 商洛職業(yè)技術(shù)學(xué)院《代數(shù)研究》2023-2024學(xué)年第二學(xué)期期末試卷
- 建筑工程施工質(zhì)量驗收規(guī)范檢驗批填寫全套表格(浙江省)
- 《病理學(xué)基礎(chǔ)》知識考核試題題庫與答案
- 人口分布 高一地理下學(xué)期人教版 必修第二冊
- 部編版六年級下冊語文第3單元習(xí)作例文+習(xí)作PPT
- 四年級上冊英語試題-Module 9 Unit 1 What happened to your head--外研社(一起)(含答案)
- 辦理工傷案件綜合應(yīng)用實務(wù)手冊
- 子宮內(nèi)膜異位癥診療指南
- 《高級計量經(jīng)濟(jì)學(xué)》-上課講義課件
- 護(hù)理診斷及護(hù)理措施128條護(hù)理診斷護(hù)理措施
- 九年級物理總復(fù)習(xí)教案
- 天然飲用山泉水項目投資規(guī)劃建設(shè)方案
評論
0/150
提交評論