版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、信 息 工 程 學(xué) 院實(shí)驗(yàn)報(bào)告的內(nèi)容與格式按任課教師的要求書(shū)寫(xiě)。 Java程序設(shè)計(jì) 實(shí)驗(yàn)/實(shí)習(xí)報(bào)告學(xué)院:理學(xué)院班級(jí):計(jì)算101姓名:洪龍龍學(xué)號(hào):2010014549 成績(jī):AJAVA圖形用戶界面1、 實(shí)驗(yàn)/實(shí)習(xí)過(guò)程實(shí)驗(yàn)題1源代碼: /* MyFrame.java */package javaapplication1;import java.awt.*;import javax.swing.*;public class MyFrame extends JFrame JMenu menu1,menu2,menu3,menu4,menu5,menu6,menu7,menu8; JTextField
2、textfield; JButton button; JLabel label; JTextArea textarea; JCheckBox checkbox1,checkbox2; JRadioButton radiobutton1,radiobutton2; JComboBox combobox; public MyFrame(String s) super(s); Container contentPane=getContentPane(); contentPane.setLayout(new BorderLayout(10,10); setBackground(Color.WHITE)
3、; /菜單欄 JMenuBar menubar=new JMenuBar(); /菜單選項(xiàng) menu1=new JMenu(File); menu2=new JMenu(Edit); menu3=new JMenu(Nagivate);menu4=new JMenu(Search); menu5=new JMenu(Project);menu6=new JMenu(Run); menu7=new JMenu(Window);menu8=new JMenu(Help); menubar.add(menu1);menubar.add(menu2); menubar.add(menu3);menub
4、ar.add(menu4); menubar.add(menu5);menubar.add(menu6); menubar.add(menu7);menubar.add(menu8); /菜單選項(xiàng) JMenuItem menuitem1=new JMenuItem(Open,new ImageIcon(images/other.png); JMenuItem menuitem2=new JMenuItem(Exit,new ImageIcon(images/Warning.png); menu1.add(menuitem1);menu1.add(menuitem2); contentPane.
5、add(menubar,BorderLayout.NORTH); JPanel pMiddle=new JPanel(new GridLayout(3,1); JPanel pTop=new JPanel(new GridLayout(1,2); /標(biāo)簽 label=new JLabel(Fill No or Yes:,SwingConstants.RIGHT); label.setIcon(new ImageIcon(images/l.gif); /文本框 textfield=new JTextField(null,15); JPanel pDepressed=new JPanel(new
6、GridLayout(4,1); pDepressed.add(pTop); pTop.add(label);pTop.add(textfield); pMiddle.add(pDepressed); /文本區(qū) JSplitPane splitpane=new JSplitPane(JSplitPane.HORIZONTAL_SPLIT); textarea=new JTextArea(This is a text area.,300,20); textarea.setLineWrap(true);/自動(dòng)換行 pMiddle.add( new JScrollPane(textarea); JP
7、anel pBottom=new JPanel(); JPanel pBottomLeft=new JPanel(new GridLayout(1,2); JPanel pBottomRight=new JPanel(new GridLayout(1,2); /單選按鈕 pBottomLeft.setBorder(BorderFactory.createTitledBorder(Gender); radiobutton1=new JRadioButton(Male); radiobutton2=new JRadioButton(Female); pBottomLeft.add(radiobut
8、ton1);pBottomLeft.add(radiobutton2); pBottom.add(pBottomLeft); /選擇框 pBottomRight.setBorder(BorderFactory.createTitledBorder(Hobby); checkbox1=new JCheckBox(Basketball); checkbox2=new JCheckBox(Music); pBottomRight.add(checkbox1);pBottomRight.add(checkbox2); pBottom.add(pBottomRight); pMiddle.add(pBo
9、ttom); contentPane.add(pMiddle,BorderLayout.CENTER); String liststr=信計(jì)101班,01.孫 望,02.劉鎮(zhèn)琿, 03.高冰濤,04.馬文龍,05.王德平,06.李笑晗,07.王 磊, 08.郭松濤,09.吳 丹,10.陳方方,11.王 東,12.趙海霞, 13.劉小瑞,14.洪龍龍,15.袁明浩,16.章 清,17.王浩羽,18.李永晉, 19.景蔚蔚,20.劉 藝,21.孫宏杰,22.卞一珺,23.丁良棋,24.李 暢 ; /下拉列表 combobox=new JComboBox(liststr); JPanel pLast
10、=new JPanel(new GridLayout(1,2); button=new JButton(Start,new ImageIcon(images/file-readonly.png); pLast.add(button);pLast.add(combobox); contentPane.add(pLast,BorderLayout.SOUTH); pack(); setSize(500,400); setVisible(true); public static void main(String args) MyFrame frame=new MyFrame(My Frame Des
11、ign); 程序的運(yùn)行結(jié)果: 該圖顯示菜單選項(xiàng) 該圖顯示下拉列表實(shí)驗(yàn)題2:源代碼: /* CalculatorPanel.java */package javaapplication1;import java.awt.*;import javax.swing.*;import java.awt.event.*;public class CalculatorPanel extends JFrame implements ActionListener JTextField textfield=new JTextField(0); JButton button=new JButton24; JPan
12、el panel=new JPanel(new BorderLayout(1,5); JPanel panel1=new JPanel(new BorderLayout(1,14); JButton textarea=new JButton(確定); public CalculatorPanel(String s) super(s); Container contentPane=getContentPane(); contentPane.setLayout(new BorderLayout(3,3); textfield.setEnabled(false);/不可編輯 textfield.se
13、tHorizontalAlignment(JTextField.RIGHT);/右對(duì)齊 panel.add(textfield,BorderLayout.NORTH); JPanel panel2=new JPanel(new GridLayout(1,4,10,2); button23=new JButton(Back);button22=new JButton(CE); button21=new JButton(C);button20=new JButton(About); for(int i=23;i=20;i-) buttoni.setForeground(Color.blue); p
14、anel2.add(buttoni); panel1.add(panel2,BorderLayout.NORTH); JPanel panel3=new JPanel(new GridLayout(1,2,12,2); JPanel panel4=new JPanel(new GridLayout(4,3,7,7); for(int i=9;i=0;i-) buttoni=new JButton(Integer.toString(i); panel4.add(buttoni); button10=new JButton(+/-); button11=new JButton(.); panel4
15、.add(button10); panel4.add(button11); panel3.add(panel4); button12=new JButton(/);button12.setForeground(Color.red); button13=new JButton(sqrt); button14=new JButton(*);button14.setForeground(Color.red); button15=new JButton(%); button16=new JButton(-);button16.setForeground(Color.red); button17=new
16、 JButton(1/x); button18=new JButton(+);button18.setForeground(Color.red); button19=new JButton(=);button19.setForeground(Color.red); JPanel panel5=new JPanel(new GridLayout(4,2,8,8); for(int i=12;i20;i+) panel5.add(buttoni); panel3.add(panel5); panel1.add(panel3,BorderLayout.CENTER); panel.add(panel
17、1,BorderLayout.CENTER); contentPane.add(panel); for(int i=0;i24;i+) buttoni.addActionListener(this); textarea.addActionListener(this); setSize(350,250); setVisible(true);/設(shè)置可見(jiàn) setLocationRelativeTo(null); public void actionPerformed(ActionEvent e) if(e.getSource()=button20) JOptionPane.showMessageDi
18、alog(null, 本計(jì)算器由龍龍同學(xué)開(kāi)發(fā), + 任何單位和個(gè)人不n得以此進(jìn)行任何形式的商業(yè)活動(dòng)!版權(quán)所 + 有,違n法必究n2013/04/10 23:20:49,Metion, JOptionPane.ERROR_MESSAGE,new ImageIcon(images/dp.gif); public static void main(String args) CalculatorPanel w=new CalculatorPanel(簡(jiǎn)易計(jì)算器); 程序的運(yùn)行結(jié)果:點(diǎn)擊“About”按鈕(其他按鈕的功能未予實(shí)現(xiàn)):實(shí)習(xí)題3:/* ComputerFrame.java */package
19、 javaapplication1;import java.awt.*;import javax.swing.*;import java.awt.event.*;import java.util.Random;public class ComputerFrame extends JFrame implements ActionListener JButton getProblem,giveAnswer; JTextField textOne,textTwo,textResult; JLabel operatorLabel,operatorEqual,message; public Comput
20、erFrame(String s) super(s); Container contentPane=getContentPane(); contentPane.setLayout(new GridLayout(2,1); JPanel panel1=new JPanel(new GridLayout(1,6); JPanel panel2=new JPanel(new GridLayout(1,4); getProblem=new JButton(獲取題目); getProblem.setBounds(50, 10, 10, 10); getProblem.addActionListener(
21、this); textOne=new JTextField(); textOne.setHorizontalAlignment(JTextField.CENTER);/居中對(duì)齊 textOne.setEditable(false);/不可編輯 operatorLabel=new JLabel(+); textTwo=new JTextField(); textTwo.setHorizontalAlignment(JTextField.CENTER); textTwo.setEditable(false);/不可編輯 operatorEqual=new JLabel(=); textResult
22、=new JTextField(); textResult.setHorizontalAlignment(JTextField.CENTER); textResult.setEditable(true);/可編輯 panel1.add(getProblem);panel1.add(textOne); panel1.add(operatorLabel);panel1.add(textTwo); panel1.add(operatorEqual);panel1.add(textResult); giveAnswer=new JButton(確認(rèn)答案); giveAnswer.addActionLi
23、stener(this); message=new JLabel(你還沒(méi)回答呢); JPanel blank=new JPanel();/空面板 panel2.add(blank);/加上空面板 panel2.add(giveAnswer); panel2.add(message); contentPane.add(panel1); contentPane.add(panel2); setSize(600,100); setVisible(true); public void actionPerformed(ActionEvent e)/*throws NumberFormatExceptio
24、n*/ Random random1=new Random(); Random random2=new Random(); if(e.getSource()=getProblem) /textOne和textTwo中 獲取兩個(gè)0-1000的隨機(jī)數(shù) textOne.setText(Integer.toString(random1.nextInt(1001); textTwo.setText(Integer.toString(random1.nextInt(1001); int choice=random2.nextInt()%4; switch(choice) case 0: operatorL
25、abel.setText(+); break; case 1: operatorLabel.setText(-); break; case 2: operatorLabel.setText(*); break; case 3: operatorLabel.setText(/); break; if(e.getSource()=giveAnswer) String judge1=new String(-?1-90-9*);/整數(shù)數(shù)字字符串 String judge2=new String(-?0-9+.0-9+);/浮點(diǎn)數(shù)數(shù)字字符串 if(textResult.getText()=null) m
26、essage.setText(你還沒(méi)回答呢); if(textResult.getText().matches(judge1)=false & textResult.getText().matches(judge2)=false ) message.setText(請(qǐng)輸入數(shù)數(shù)字符); textResult.setText(); JOptionPane.showMessageDialog(null,輸入非數(shù)字異常,警告提示, JOptionPane.ERROR_MESSAGE,new ImageIcon(images/h.gif); System.exit(0); if(operatorLabe
27、l.getText()=+) if(Integer.parseInt(textResult.getText()=Integer.parseInt(textOne.getText() +Integer.parseInt(textTwo.getText() message.setText(您回答正確); else message.setText(您回答錯(cuò)誤); if(operatorLabel.getText()=-) if(Integer.parseInt(textResult.getText()=Integer.parseInt(textOne.getText() -Integer.parseInt(textTwo.getText() message.setText(您回答正確); else message.setText(您回答錯(cuò)誤); if(operatorLabel.getText()=*) if(Integer.parseInt(textResult.getText()=Integer.parseInt(textOne.ge
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五版家族企業(yè)股權(quán)分家協(xié)議示范文本3篇
- 2025年建設(shè)資金借款合同2篇
- 2025年度職業(yè)學(xué)校教學(xué)辦公桌椅定制銷售協(xié)議2篇
- 客服勞動(dòng)合同
- 二零二五年度企業(yè)債券發(fā)行借款合同3篇
- 汽車(chē)設(shè)備租賃合同
- 2025年投標(biāo)采購(gòu)心得體會(huì)總結(jié)與合同糾紛調(diào)解機(jī)制合同3篇
- 二零二五年文化產(chǎn)業(yè)發(fā)展勞務(wù)分包合作合同2篇
- 二零二五版毛竹山承包及竹林產(chǎn)品品牌授權(quán)合同2篇
- 二零二五年度瀝青攤鋪機(jī)長(zhǎng)期租賃協(xié)議2篇
- 《國(guó)有控股上市公司高管薪酬的管控研究》
- 餐飲業(yè)環(huán)境保護(hù)管理方案
- 食品安全分享
- 礦山機(jī)械設(shè)備安全管理制度
- 計(jì)算機(jī)等級(jí)考試二級(jí)WPS Office高級(jí)應(yīng)用與設(shè)計(jì)試題及答案指導(dǎo)(2025年)
- 造價(jià)框架協(xié)議合同范例
- 糖尿病肢端壞疽
- 《創(chuàng)傷失血性休克中國(guó)急診專家共識(shí)(2023)》解讀課件
- 小學(xué)六年級(jí)數(shù)學(xué)100道題解分?jǐn)?shù)方程
- YY 0838-2021 微波熱凝設(shè)備
- 病原細(xì)菌的分離培養(yǎng)
評(píng)論
0/150
提交評(píng)論