




已閱讀5頁,還剩9頁未讀, 繼續(xù)免費閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
實 習(xí) 報 告題目: 高級程序語言設(shè)計(Java) 系部名稱: 經(jīng)濟管理系 專業(yè)班級: 信管104 學(xué)生姓名: 張揚程 學(xué) 號: 201004034432 指導(dǎo)教師: 王志輝 劉帆 教師職稱: 講師 2011年12月30日import java.awt.*;import javax.swing.*;import java.awt.event.*;import javax.swing.border.*;import java.text.DecimalFormat; public class JSQ JFrame frame; JMenuBar mb; JMenu m1,m2,m3; JMenuItem copy,cut,paste,content,index,b,k,s; Font t;JButton bN,bS;ImageIcon img; JTextField text;GridBagLayout gridbag;GridBagConstraints c; JPanel p1,p2; JLabel label; private boolean IfResult = true, flag = false; private String operation = =; private double result = 0; private Num numActionListener;private DecimalFormat df; public JSQ ( ) frame=new JFrame(計算器); df = new DecimalFormat(#.#); img=new ImageIcon(圖片/圖片.jpg);frame.setIconImage(img.getImage();frame.setResizable(false);frame.setBounds(200,200,320,280);Container c1=frame.getContentPane(); mb=new JMenuBar( ); m1=new JMenu(編輯(E); copy=new JMenuItem(復(fù)制(C) Ctrl+C); paste=new JMenuItem(粘貼(P) Ctrl+V); m2=new JMenu(查看(V); b=new JMenuItem(標準型(T); k=new JMenuItem(科學(xué)型(S); s=new JMenuItem(數(shù)字分組(I); m3=new JMenu(幫助(H); content=new JMenuItem(幫助主題(H); index=new JMenuItem(關(guān)于計算器(A); t=new Font(sanserif,Font.PLAIN,12); addEditMenu(); addViewMenu(); addHelpMenu();addJMenuBar(); frame.setJMenuBar(mb); c=new GridBagConstraints(); gridbag=new GridBagLayout(); p1=new JPanel();c1.add (p1); p1.setLayout(gridbag);text=new JTextField(0.,25); text.setBackground(Color.white);p2=new JPanel(); text.setHorizontalAlignment(JTextField.RIGHT); text.setBorder(BorderFactory.createBevelBorder(BevelBorder.LOWERED); text.setEditable(false); p2.add(text);label=new JLabel ( ); c = newGridBagConstraints(0,1,1,1,0,0, GridBagConstraints.CENTER, GridBagConstraints.BOTH,new Insets(0,2,0,2),0,0); gridbag.setConstraints(label,c); label.setFont(new Font(Serif,Font.PLAIN,15); label.setBorder(BorderFactory.createBevelBorder(BevelBorder.LOWERED); p1.add(label); numActionListener = new Num(); addJPanel(p2,0,0,6,1); addJButton(Backspace,1,1,2,1,Color.red,new Clear(); addJButton(CE,3,1,2,1,Color.red,new Clear(); addJButton(C,5,1,1,1,Color.red,new Clear(); addJButton(MC,0,2,1,1,Color.red,new Clear(); addJButton(MR,0,3,1,1,Color.red,new Clear(); addJButton(MS,0,4,1,1,Color.red,new Clear(); addJButton(M+,0,5,1,1,Color.red,new Clear(); addJButton(7,1,2,1,1,Color.blue,numActionListener); addJButton(4,1,3,1,1,Color.blue,numActionListener); addJButton(1,1,4,1,1,Color.blue,numActionListener); addJButton(0,1,5,1,1,Color.blue,numActionListener); addJButton(8,2,2,1,1,Color.blue,numActionListener); addJButton(5,2,3,1,1,Color.blue,numActionListener); addJButton(2,2,4,1,1,Color.blue,numActionListener); addJButton(9,3,2,1,1,Color.blue,numActionListener); addJButton(6,3,3,1,1,Color.blue,numActionListener); addJButton(3,3,4,1,1,Color.blue,numActionListener); addJButton(+/-,2,5,1,1,Color.blue,numActionListener); addJButton(.,3,5,1,1,Color.blue,numActionListener); addJButton(/,4,2,1,1,Color.red,new Signs(); addJButton(*,4,3,1,1,Color.red,new Signs(); addJButton(-,4,4,1,1,Color.red,new Signs(); addJButton(+,4,5,1,1,Color.red,new Signs(); addJButton(Sqrt,5,2,1,1,Color.blue,new Signs(); addJButton(%,5,3,1,1,Color.blue,new Signs(); addJButton(1/x,5,4,1,1,Color.blue,new Signs();addJButton(=,5,5,1,1,Color.red,new Signs(); frame.setVisible(true); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); private void addEditMenu()m1.add( copy);m1.addSeparator();m1.add( paste);m1.setFont(t); private void addViewMenu()m2.add(b);m2.addSeparator();m2.add(k);m2.addSeparator();m2.add(s);m2.setFont(t); private void addHelpMenu() m3.add(content); m3.add(index); m3.addSeparator();m3.setFont(t); private void addJMenuBar() mb.add(m1); mb.add(m2); mb.add(m3);private void addJPanel(String name,int gridx,int gridy,int gridwidth,int gridheight ) c.gridx=gridx; c.gridy=gridy; c.gridwidth=gridwidth; c.gridheight=gridheight; gridbag.setConstraints(p2,c);p1.add(p2); private void addJButton(String name,int gridx,int gridy,int gridwidth,int gridheight,Color yanse,ActionListener action)JButton button =new JButton(name); button.addActionListener(action);c.gridx=gridx;c.gridy=gridy;c.gridwidth=gridwidth;c.gridheight=gridheight;c.anchor=GridBagConstraints.CENTER;button.setForeground(yanse);c.insets=new Insets(3,2,3,2);gridbag.setConstraints(button,c);p1.add(button);class Num implements ActionListenerpublic void actionPerformed(ActionEvent e)String str = e.getActionCommand();if(IfResult)text.setText(str);IfResult = false;else text.setText(text.getText().trim() + str);if(text.getText().equals(0)text.setText(0);IfResult = true;flag = true;private void getResult (double x)if(operation = +) result += x; else if(operation = -) result -= x; else if(operation = *) result *= x; else if(operation = /) result /= x; else if(operation = =) result = x; text.setText(df.format(result); class Signs implements ActionListener public void actionPerformed(ActionEvent e) String str = e.getActionCommand(); if( str.equals(%) ) text.setText(df.format(Double.parseDouble(text.getText() / 100);else if ( flag ) IfResult = false;If ( IfResult ) operation = str; else getResult(Double.parseDouble(text.getText();operation = str;IfResult = true;class Clear implements ActionListenerpublic void actionPerformed(ActionEvent e) String str = e.getActionCommand();if(str = C)text.setText(0);IfResult = true;result = 0;else if(str = -/+)double i = 0 - Double.parseDouble (text.getText( ).trim();text.setText(df.format(i); else if(str = Backspace)if(Double.parseDouble(text.getText() 0)if(text.getText().length() 1)text.setText(text.getText().substring(0,text.getText()
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 調(diào)試工序管理辦法模板
- 科協(xié)項目審批管理辦法
- 定向委托采購管理辦法
- 電信工單培訓(xùn)課件
- 照明學(xué)習(xí)培訓(xùn)課件
- 肝硬化中醫(yī)課件
- 高考 人教 數(shù)學(xué)試卷
- 分班考高中數(shù)學(xué)試卷
- 二年級河南數(shù)學(xué)試卷
- 高3試卷數(shù)學(xué)試卷
- DB3502∕T 166-2024 既有廠區(qū)及老舊小區(qū)海綿城市方案設(shè)計導(dǎo)則
- 2025年 江西省金控科技產(chǎn)業(yè)集團有限公司招聘考試筆試試卷附答案
- 2025云南中考歷史真題及答案
- 四川省成都市蓉城聯(lián)盟2024-2025學(xué)年高一下學(xué)期6月期末考試物理試題(含答案)
- 壓軸訓(xùn)練:全等三角形(多解、動點、新定義型壓軸)(原卷版)
- 【人教版】吉林長春2024-2025學(xué)年 五年級下學(xué)期期末數(shù)學(xué)試題【附答案】
- 福建省三明市永安林業(yè)(集團)股份有限公司招聘筆試題庫2025
- 2025年安慶望江縣融媒體中心專業(yè)技術(shù)人員招聘考試筆試試題(含答案)
- 2025公文寫作考試真題庫(含答案)
- DLT 5035-2016 發(fā)電廠供暖通風(fēng)與空氣調(diào)節(jié)設(shè)計規(guī)范
- 2024年廣東省中考生物+地理試卷(含答案)
評論
0/150
提交評論