




全文預覽已結(jié)束
下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
實驗八 Java 圖形用戶界面設(shè)計(I)8.1實驗目的、內(nèi)容及性質(zhì)掌握 Java 的 GUI 設(shè)計技術(shù),掌握 AWT 和 Swing 的應用技巧。實驗性質(zhì):驗證、必做實驗學時:2學時8.2問題及思考1、 最常見的AWT以及Swing控件用法。2、 幾個常見布局總結(jié)3、 區(qū)分容器控件和一般非容器控件8.3實驗指導1、 Swing示例/*需要哪些組件,如何布局?*/ import java.awt.*; import java.awt.event.*; import javax.swing.*; public class MyFrm extends JFrame/從JFrame繼承 /*聲明界面需要使用的控件*/ JLabel lbl_name =new JLabel(用戶名); JLabel lbl_pwd =new JLabel(密碼); JTextField txt_name=new JTextField(); JPasswordField txt_pwd=new JPasswordField(); JButton btn_OK=new JButton(登陸); JButton btn_Cancel=new JButton(取消); /*在構(gòu)造函數(shù)中將控件放置在JFrame上*/ public MyFrm() /*獲取當前Frame的內(nèi)容面板*/ JPanel jp=(JPanel)this.getContentPane(); /*設(shè)置內(nèi)容面板的布局 Layout*/ jp.setLayout(new GridLayout(3,2); jp.add(lbl_name);jp.add(txt_name); jp.add(lbl_pwd);jp.add(txt_pwd); jp.add(btn_OK);jp.add(btn_Cancel); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); public static void main(String arg) /*純Java樣式顯示窗體*/ JFrame.setDefaultLookAndFeelDecorated(true); /*實例化當前窗體類*/ MyFrm frm=new MyFrm(); frm.setSize(200,200); frm.setVisible(true); 2、常用布局1)、流布局:FlowLayout 從左到右,自上而下方式在容器中排列,控件的大小不會隨容器大小變化. 容器.setLayout(new FlowLayout(FlowLayout.LEFT);2)、網(wǎng)格布局:GridLayout 按照指定行數(shù)與列數(shù),將容器分成大小相等的單元格每個單元格放置一個控件. 不能將控件放在指定單元格 容器.setLayout(new GridLayout(3,4,10,15);3)、邊界布局:BorderLayout 將容器分成東、西、南、北、中五個部分 容器.setLayout(new BorderLayout();窗口的內(nèi)容面板默認布局就是邊界布局。容器.add(控件,BorderLayout.NORTH); 4)、混合布局:使用JPanel,將多個布局組合在一起使用 JPanel jp=(JPanel)this.getContentPane();for(int i=0;ibtn.length;i+)btni=new JButton(btn+i);JPanel jp1=new JPanel();/默認布局為FlowLayoutjp1.setLayout(new GridLayout(2,2);for(int i=0;i4;i+) jp1.add(btni);JPanel jp2=new JPanel();/默認布局為FlowLayout for(int i=0;i4;i+) jp2.add(btni+4);5)、絕對布局 null:以坐標定位 容器.setLayout(null); 每個控件在放置在容器之前,必須設(shè)置其邊界 setBounds(x,y,width,height);btn.setBounds(10,100,30,60);3、Swing示例Grid布局import java.awt.*;import java.awt.event.*;import javax.swing.*;public class GridLayoutDemo extends JFrame private JButton buttons; private String names = one, two, three, four, five, six ; public GridLayoutDemo() super( GridLayout Demo ); JPanel container =(JPanel)this.getContentPane(); container.setLayout(new GridLayout( 3, 2 ); / create and add buttons buttons = new JButton names.length ; for ( int count = 0; count names.length; count+ ) buttons count = new JButton( names count ); container.add( buttons count ); this.setSize( 300, 150 ); this.setVisible( true ); public static void main( String args ) GridLayoutDemo application = new GridLayoutDemo(); / end class GridLayoutDemo注意:在做下列題目前仔細閱讀第一個示例,弄懂Swing界面設(shè)計8.4實踐編程1、調(diào)試運行示例一。弄清楚Swing設(shè)計的基本流程。2、編寫如下界面。3、利用合適的布局和Swing控件完成下題按照界面使用相應控件與合適的布局完成下題,要求按生成隨機數(shù)按紐產(chǎn)生三個隨機整數(shù)0到100之間,按計算平均數(shù)按紐計算平均值,如圖所示,初始界面4編寫程序?qū)崿F(xiàn)如下界面,實現(xiàn)事件如果按下座位i 就在控制臺中顯示“座位i被選中” 例如按下 “座位0“,則輸出座位0被選中”5、(多態(tài)實驗)編寫一個完整的Java Application 程序。包含接口Shape,MyRectangle類,MyTriangle類及Test類,具體要求如下:、接口Shape:double area():求一個形狀的面積 double perimeter ():求一個形狀的周長、類Rectangle:實現(xiàn)Shape接口,并有以下屬性和方法: 屬性width: double類型,表示矩形的長height: double類型,表示矩形的高 方法Rectangle(double w, double h):構(gòu)造函數(shù) toString()方法 :輸出矩形的描述信息,如“width=1.0,height=2.0, perimeter=6.0, area=2.0”、類Triangle:實現(xiàn)Shape接口,并有以下屬性和方法: 屬性x,y,z: double型,表示三角形的三條邊s: 周長的1/2(注:求三角形面積公式為,s=(x+y+z)/2 ,開方可用Math.sqrt(double)方法) 方法Triangle(double
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 廣西二級建造師安全b證考試試題及答案
- 公司法律面試題及答案
- 工考計算機試題及答案
- 計算機二級MySQL視圖與數(shù)據(jù)控制試題及答案
- 財務成本管理通關(guān)秘籍試題與答案
- 法律資格考試試題及答案
- 常用庫應用Python試題及答案
- 法律知識競賽試題及答案
- 法律英語閱讀試題及答案
- 計算機一級Msoffice學習資源與應用試題及答案
- 非遺扎染創(chuàng)新創(chuàng)業(yè)計劃書
- 超星爾雅學習通《先秦諸子導讀(浙江大學)》2025章節(jié)測試附答案
- 江蘇社工考試試題及答案
- 2025年勞務合同模板電子版簡短一點
- 二級建造師繼續(xù)教育題庫(帶答案)
- 市場監(jiān)管投訴舉報培訓
- 《新能源乘用車二手車鑒定評估技術(shù)規(guī)范 第1部分:純電動》
- 課題申報參考:西藏地方與祖國關(guān)系史融入當?shù)馗咝!爸腥A民族共同體概論”課教學研究
- 【MOOC】《C++程序設(shè)計基礎(chǔ)》(華中科技大學)章節(jié)作業(yè)中國大學慕課答案
- 《南方航空公司匯率風險管理策略案例分析》
- 病房心臟驟停應急演練
評論
0/150
提交評論