




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
實驗報告課程java程序設計實驗項目圖形用戶界面成績專業(yè)班級班內(nèi)序號指導教師姓名學號實驗日期2010-1-4實驗目的:1、熟悉GUI設計步驟2、掌握GUI各個組件的用法實驗要求:1.使用BorderLayout將JFrame布局分為左右兩塊;左邊使用GridLayout,半酣3個按鈕;;右邊JLabel里顯示一幅幅畫,按鈕空JLabel是否顯示滾動條。源代碼如下:importjavax.swing.*;importjava.awt.*;publicclassframeTest{publicstaticvoidmain(Stringargs[]){CFrameframe=newCFrame("FrameTest");Containerpane=frame.getContentPane();pane.add(newleftPanel(),BorderLayout.WEST);pane.add(newrightPanel(),BorderLayout.EAST);frame.pack();frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.setVisible(true);}}classCFrameextendsJFrame{publicCFrame(Stringtitle){setTitle(title);setBackground(Color.BLUE);}}classleftPanelextendsJPanel{publicleftPanel(){JButtonbt1=newJButton("view");JButtonbt2=newJButton("clear");JButtonbt3=newJButton("noidea");setLayout(newGridLayout(2,2,100,100));add(bt1);add(bt2);add(bt3);bt1.addActionListener(this);bt2.addActionListener(this);bt3.addActionListener(this);}}classrightPanelextendsJPanel{publicrightPanel(){JLabellabel=newJLabel(newImageIcon("image.jpg"));label.setToolTipText("西瓜帽");JScrollPanescr=newJScrollPane(label,ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS,ScrollPaneConstants.HORIZONTAL_SCROLLBAR_ALWAYS);add(label);add(scr);}}運行結果如圖所示2.練習使用對話框。包括一個JLabel和兩個JButton,按任何一個JButton都會產(chǎn)生一個輸入對話框,按確定后將輸入內(nèi)容在JLabel中顯示出來源代碼如下:importjavax.swing.*;importjava.awt.*;importjava.awt.event.*;publicclassdTest{publicstaticvoidmain(Stringargs[]){Formform=newForm();form.setSize(300,200);form.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);form.setVisible(true);}}classFormextendsJFrameimplementsActionListener{privateDialdia;JLabellab=newJLabel("請輸入");publicForm(){JButtonbtn1=newJButton("Yes");JButtonbtn2=newJButton("No");getContentPane().setLayout(newGridLayout(3,1));add(lab);add(btn1);add(btn2);setTitle("inputprac");btn1.addActionListener(this);btn2.addActionListener(this);}publicvoidactionPerformed(ActionEventevent){if(event.getActionCommand()=="輸入"){dia=newDial(this,"請輸入內(nèi)容",true);dia.setVisible(true);lab.setText(dia.getSt());}else{System.exit(0);}}}classDialextendsJDialogimplementsActionListener{privateJTextFieldtext=newJTextField("change");privateJButtonbtn1=newJButton("確定");privateJPanelpanel=newJPanel();publicDial(JFrameframe,Stringtitle,booleanb){super(frame,title,b);getContentPane().setLayout(newFlowLayout());panel.add(text);panel.add(btn1);btn1.addActionListener(this);getContentPane().add(panel);pack();}publicvoidactionPerformed(ActionEventevent){this.dispose();}publicStringgetSt(){returntext.getText();}}運行結果如圖所示3.聯(lián)系使用JTable。包括姓名、學號、語文成績、數(shù)學成績、總分共5項源代碼如下:importjava.awt.*;importjavax.swing.*;publicclasstable{publicstaticvoidmain(Stringargs[]){JFrameform=newJFrame("Table試驗");finalObject[]row={"姓名","學號","語文成績","數(shù)學成績","總分"};Object[][]rowData={{"張三","01","81","80","160"},{"李四","02","93","72","165"},{"王麻子","03","99","97","196"},};JTabletb=newJTable(rowData,row);JScrollPanepane=newJScrollPane(tb);form.getContentPane().add(tb);form.setVisible(true);form.pack();}}運行結果如圖所示4.編寫Application程序,構造一個GUI,實現(xiàn)對兩個數(shù)的加、減、乘、除功能。應含有3個JTextField和1個JButton源代碼如下:importjava.awt.*;importjavax.swing.*;importjava.awt.event.*;classFormextendsJFrameimplementsActionListener{JTextFielda=newJTextField(6);JTextFieldb=newJTextField(6);JTextFieldc=newJTextField("+",1);JButtonbtn=newJButton("計算");JLabellab=newJLabel("=");publicForm(){Containerct=getContentPane();ct.add(a);ct.add(c);ct.add(b);ct.add(lab);ct.add(btn);ct.setLayout(newFlowLayout());btn.addActionListener(this);pack();setVisible(true);}publicvoidactionPerformed(ActionEventevent){intm=Integer.parseInt(a.getText());intn=Integer.parseInt(b.getText());Stringf=c.getText().trim();if(f=="+"){intr=m+n;lab.setText("="+r);}elseif(f=="-"){intr=m-n;lab.setText("="+r);}elseif(f=="*"||f=="×"){intr=m*n;lab.setText("="+r);}elseif(f=="/"||f=="÷"){intr=m/n;lab.setText("="+r);
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 浙江中醫(yī)藥大學濱江學院《醫(yī)患溝通與技巧》2023-2024學年第二學期期末試卷
- 圖木舒克職業(yè)技術學院《學前教育史》2023-2024學年第二學期期末試卷
- 濰坊環(huán)境工程職業(yè)學院《科研方法論》2023-2024學年第二學期期末試卷
- 厚、薄膜混合集成電路及消費類電路項目效益評估報告
- 浙江警官職業(yè)學院《地域史研究方法與實踐》2023-2024學年第二學期期末試卷
- 河池廣西河池市環(huán)江縣招聘教師29人筆試歷年參考題庫附帶答案詳解
- 演藝導演合同范本
- 山西農(nóng)業(yè)大學《工程力學A1》2023-2024學年第二學期期末試卷
- 福州英華職業(yè)學院《簡筆畫與繪本》2023-2024學年第二學期期末試卷
- 蘇州工藝美術職業(yè)技術學院《JAVA企業(yè)級開發(fā)》2023-2024學年第二學期期末試卷
- 護理中級競聘報告
- 《肩袖損傷護理》課件
- 維修保養(yǎng)協(xié)議書范本
- 河南省鄭州市外國語高中2025屆高考壓軸卷英語試卷含解析
- TDT1075-2023光伏發(fā)電站工程項目用地控制指標
- 新版第三類醫(yī)療器械分類目錄
- 2024全新血液透析培訓
- 護校隊工作職責及管理制度
- 2024年湖南省公務員考試《行測》真題及答案解析
- GB/T 623-2024化學試劑高氯酸
- DB22T 5167-2024 市政橋梁結構監(jiān)測系統(tǒng)運行維護與管理標準
評論
0/150
提交評論