下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
Object-orientedProgrammingwithObject-orientedProgrammingwithMonday,December22, Chapter10Java Java窗文本框、按紐 和文本布選擇性容窗口事件、鼠標事件和鍵盤 ?TheInstituteofBusiness Chapter10JavaJavaSwingJava的java.awt包,即Java抽象窗口工具包用來設計GUI的組件類用來設計GUI的組件類 ?TheInstituteofBusiness Chapter10JavaJava提供的Jae類的實例是一個底層容器,即通常所稱的窗口。其他組件必須被添加到底層容器中,以便借助這個地層容器和操作系統(tǒng)進行信息JFrame類是Container類的間接子類。當需要一個窗口時,可使用JFrame或其子類創(chuàng)建象 ?TheInstituteofBusiness Chapter10Java. JFrame()創(chuàng)建一個無標題的窗JFrame(Strings)創(chuàng)建標題為s的窗口publicvoidsetBounds(inta,intb,intwidth,intheight設置窗口的初始位置是(a,b),publicvoidsetSize(intwidth,intheight)設置窗口的大小publicvoidsetVisible(booleanb)設置窗口是否可見,窗口默認是不可見的。publicvoidsetResizable(booleanb設置窗口是否可調(diào)整大小,默認可調(diào)整大小。publicvoiddispose撤消當前窗口,并釋放當前窗口所使用的資源。publicvoidsetExtendedState(intstate)設置窗口的擴展狀態(tài)publicvoidsetDefaultCloseOperation(intoperation)該方法用來設置單擊窗體右上角的關閉圖標后,程序會做出怎樣的處理。例題10-1 ?TheInstituteofBusiness Chapter10Java. 負責創(chuàng)建菜單,J 立一空標題的 (Strings)建立一個指定標題菜單,標題由參數(shù)s確定publicvoid Itemitem)向菜單增加由參數(shù)item指定的菜單選項public ItemgetItem(intn)得到指定索引處的菜單選publicintgetItemCount()得到菜單選項的數(shù) ?TheInstituteofBusiness Chapter10Java. 菜單下幾
JComponent類的子類 Item負責創(chuàng)建菜單項 Item類的方法有 Item(Strings)構造有標題的菜單 Item(Stringtext,Iconicon)構造有標題和圖標的菜單項publicvoidsetEnabled(booleanb設置當前菜單項是否可被選擇。publicStringgetText()得到菜單選項的名字。單J 是J It的子類,因此菜單本身也是一個菜單項,當把個菜單看作菜單項添加到某個菜單中,稱這樣的菜單為子菜。菜單上的圖標:圖標類 一個圖標,然后使用其子類ImageIcon類創(chuàng)建一圖標,如:Iconicon=new 例題10- ?TheInstituteofBusiness Chapter10Java使用JComponent的子類JTextField創(chuàng)建文本文本框的特點是允許用戶在文本框中輸 ?TheInstituteofBusiness Chapter10Java. JTextField()創(chuàng)建文本框,文本框的長度為一個機器字符長。TextField(Strings)創(chuàng)建文本框,文本框的初始字符串為s。publicvoidsetText s)設置文本框中的文本為參數(shù)s指定的文publicStringgetText()獲取文本框中的文本publicvoidsetEditable(booleanb)指定文本框的可編輯性。文本框默認為可setHorizontalAlignment(intalignment)設置文本框中文本的對齊方式JTextField.RIGHTpublicvoidaddActionListenerActionListener向文本框增加JTextField.RIGHTpublicvoidaddActionListenerActionListener向文本框增加動作監(jiān)視器(監(jiān)視 到文本框)publicvoidremoveActionListener(ActionListener)移去文本框上的動作器。例題10- ?TheInstituteofBusiness Chapter10Java. 當用戶在文本框中鍵入文本后按回車鍵、單擊按鈕、在一個下拉式列表表中選擇一個條目等操作時,都發(fā)生界面事件。事件源:能夠產(chǎn)生事件的對象都可以成為事件源監(jiān)視器:事件源通過調(diào)用相應的方法將某個對象 自己的監(jiān)視器。對于文本框,這個方法是:處理事件的接口:Java規(guī)定:為了讓監(jiān)視器這個對象能對事件源發(fā)生的事件進行處理,創(chuàng)建該監(jiān)視器對象的類必須實現(xiàn)相應的接口,那么當事件源發(fā)生事件時,監(jiān)視的接口。對于文本框,這個接口的名字是該接口中只的接口。對于文本框,這個接口的名字是該接口中只有一 ?TheInstituteofBusiness Chapter10Java. ActionEvent類中的方法publicObjectgetSource()ActionEven對象調(diào)用該以獲取發(fā)生ActionEvent事件的事件源對象 publicString mandActionEvent對象調(diào)用該例題10-4,例題10- ?TheInstituteofBusiness Chapter10Java. ?TheInstituteofBusiness Chapter10Java. 內(nèi)部類 例題10-當事件的處理比較簡單,系統(tǒng)也不復雜時,使 類做監(jiān)視器是一個不錯例題10- ?TheInstituteofBusiness Chapter10Java. 事件的處理比較方便,這是因為,監(jiān)視器可以方視器。讓事事件的處理比較方便,這是因為,監(jiān)視器可以方例題10-例題10- ?TheInstituteofBusiness Chapter10Java. 模Java的事件處理是基于 模式,即事件源調(diào)用調(diào)用方法將 接口回addXXXListener(XXXListenerlistener);方法中的參數(shù)是一3.Java語言使用接口回addXXXListener(XXXListenerlistener);方法中的參數(shù)是一3.從方法綁定角度看,Java口。4.保持松藕合監(jiān)視器和事件源應當保持是一種松藕合 ?TheInstituteofBusiness Chapter10Java. ,Strings,intcolumns);該構造 2PlainDocumnet的一個實例,默認文檔類型允許在文本框里任意地輸入、刪除字符。PlainDocumnet類有如下兩個重要的方insertString(intoffset,Strings,AttributeSeta);在位置offset處remove(intoffset,intlength);從位置offset處移去文本框中一段 ?TheInstituteofBusiness Chapter10Java. 可以通過上述構造方法或JTextFieldsetDocutment(PlainDocumnetd)改變文本框的文檔類型??梢詳U展PlainDocumnet,重寫父類PlainDocumnet中的 ?TheInstituteofBusiness Chapter10Java框使用JComponent的子類JPasswordField創(chuàng) 框文本框
框是允許用戶
框中輸入單 ,碼框的默認回顯字符是‘*框常用方char[]getPassword():返回實際的 ?TheInstituteofBusiness Chapter10Java按JComponent的子類JButton類用來創(chuàng)建按JButton類常用的方Button(Stringname)創(chuàng)建名字是namepublicJButton(Iconicon)創(chuàng)建帶有圖標iconpublicJButton(Stringname,Iconicon)創(chuàng)建名字是name且?guī)в袌D標iconpublicvoidsetText(Stringname)publicStringgetText()publicvoidsetIcon(Iconicon)publicIcongetIcon()publicvoidsetHorizontalTextPosition(inttextPosition)publicvoidpublicvoidsetMnemonic(charmnemonic設置按鈕的鍵盤激活方式,mnemonic的有效值是:’a’~’zpublicvoidaddActionListener(ActionListener按鈕對象調(diào)用該方法可以向按鈕注冊ActionEvent事件監(jiān)視 ?TheInstituteofBusiness Chapter10Java 按鈕可以觸發(fā)按鈕可以觸發(fā)ActionEvent事件。例題10- ?TheInstituteofBusiness Chapter10Java.JComponent的子類JLabel創(chuàng)建的對象稱 。JLabel類的常用方法如publicJLabel()創(chuàng)建沒有名字 publicJLabel(Strings)創(chuàng)建名字是s ,s 中靠左對齊publicJLabel(Strings,intaligment參數(shù)aligment決 中的文字 中的水平對齊方式publicJLabel(Icon 創(chuàng)建具有圖標icon ,icon 中靠左對齊StringgetText()獲 的名字 的名字是s IcongetIcon()獲 的圖標voidsetIcon(Iconicon)設 的圖標是icon參數(shù)a確定名字相對 上的圖標的位置voidsetVerticalTextPosition(int參數(shù)a確定名字相對于JLabel上的圖標的位 ?TheInstituteofBusiness Chapter10Java菜單項可以發(fā)生ActionEvent事件,即選中菜單項能導致ActionEvent事件的發(fā)生,因此,可以通過處理例題10- ?TheInstituteofBusiness Chapter10Java容器可以使用方setLayout(布局對象);設置自己的布 ?TheInstituteofBusiness Chapter10Java FlowLayoutFlowLayout類創(chuàng)建的對象稱做FlowLayout型布局。FlowLayout型布局是JPanelFlowLayout類的一個常用構造方法如下:例如:FlowLayoutflow=new該構造方法可以創(chuàng)例如:FlowLayoutflow=newcon可以使用Container類提供的add方法將組件順序地添加到容器中FlowLayoutsetAlignment(intaligin):重新設置布局的對齊setHgap(inthgap)和setVgap(intvgap):重新設置水平間隙和垂直間 ?TheInstituteofBusiness Chapter10Java BorderLayout布BorderLayout布局是Window如果一個容器使用這種布局,那么容器空間簡單地劃分為東、西、南、北、中五個區(qū)域一個使用BorderLayout布局的容器con,可以使用add方法將一個組件b或例題10 ?TheInstituteofBusiness Chapter10Java CardLayout假設有一個容器con,那么,使用CardLayout1.創(chuàng)建CardLayout對象作為布局,如:CardLayoutcard=new使用CardLayout的容器可以容納多個組件,這些組件被層疊假設有一個容器con,那么,使用CardLayout1.創(chuàng)建CardLayout對象作為布局,如:CardLayoutcard=new使用容器的setLayout()方法為容器設置布局,如容器調(diào)用addStrinsComonentb)將組件b加入容4.card.show(con,s);顯示4.card.show(con,s);顯示容器con中組件代號為s的組card.first(con);顯示con中的第一個組件card.last(con);顯示con中最后一個組件card.next(con);顯示當前正在被顯示的組件的下一個組card.previous(con);顯示當前正在被顯示的組件的前一個組件例題10- ?TheInstituteofBusiness Chapter10Java GridLayoutGridLayout是使用較多的布局編輯器,其基本布局策略是把容器劃分成若干行乘若干列的網(wǎng)格區(qū)域,組件就位于這些分出來的小格使用GridLayout布局編輯器的一般步驟如下1.使用GridLayout的構造方法GridLayout(intm,intn)創(chuàng)建布局對象,指定劃分網(wǎng)格的行數(shù)m和列數(shù)n,GridLayoutgrid=newnewGridLayout(10,8).使用GridLayout布局的容器調(diào)用方法add(Componentc)將組件c加入容器.用GridLayout布局的容器最多可添加m×n個組件使用容器嵌套,可以設計出符合一定需要的布 ?TheInstituteofBusiness 2 Chapter10Java BoxLayout布用BoxLayout類可以創(chuàng)建一個布局對象,稱為盒式使用BoxLayou的構造方法BoxLayout(Containercon,,intaxis)可以創(chuàng)axisBoxLayout.X_AXIS、BoxLayout.Y_AXIS。該參數(shù)axis的取值決定盒式布局是行型盒式布局或列型2.使用Box類的類(靜態(tài))方createHorizontalBox()獲得一個具有行盒式布局的盒式容器使用Box類的類(靜態(tài))方法createVerticalBox()獲得一個具有列式布局的盒式容見的水平Struct對象,稱做水平支撐。該水平支撐的高見的水平Struct對象,稱做水平支撐。該水平支撐的高度為0寬度是width 例題10- ?TheInstituteofBusiness Chapter10Java null布例如,p是某個容器p.setLayout(null);把p的布局設置為空布局向空布局的容器p添加一個組件c需要兩個步首先,容器p使用add(c)方法添加組然后組件c再調(diào)用setBounds(inta,intb,intwidth,intheight)設置該組件在容器p中的位置和本身的大小 ?TheInstituteofBusiness Chapter10Java§108文本JComponent的子類JTextArea負責創(chuàng)建文本 ?TheInstituteofBusiness Chapter10Java JTextArea類的主要JTextAea()使用這個構造方法創(chuàng)建文本區(qū),則文本區(qū)的可見列數(shù)、行數(shù)取默認值。文本區(qū)有水平和垂直滾動條。JTextArea(Strings)使用這個構造方法創(chuàng)建文本區(qū),則文本區(qū)的初始字符串為s。文本區(qū)的可見列數(shù)保證能看見字符串、可見行數(shù)取默認值。文本區(qū)有水平和垂JTextArea(intx,inty使用這個構造方法創(chuàng)建文本區(qū),文本區(qū)的可見行數(shù)為y,可見列數(shù)為x。文本區(qū)有水平和垂直滾動條。publicvoidsetText(Strings)文本區(qū)調(diào)用該方法可以將文本區(qū)中的文本設置為參數(shù)s指定的文本,文本區(qū)中先前的文本被清publicStringgetText()文本區(qū)調(diào)用該方法可以獲取文本區(qū)中的文publicvoidinsert(Strings,intx)文本區(qū)調(diào)用該方法可以在指定位置x例題10- ?TheInstituteofBusiness Chapter10Java§10.8.2文本區(qū)上 Event事文本區(qū)可以觸 Event事件 Event類javax.swing.event包中文本區(qū)使用addDucumentListener(監(jiān)視器);方法向文本 的文 監(jiān)器創(chuàng)建監(jiān)視器的類需實 Listener接口,該接口中有三個方法publicvoid Eventpublicvoid Eventpublicvoid Event 文本區(qū) 方法返回 的文檔例題10- ?TheInstituteofBusiness 選擇JComponent的子類JCheckBox 稱選框JCheckBox類常用publicJCheckBoxpublicJCheckBox(Stringname創(chuàng)建名字是namepublicJCheckBox(Iconicon創(chuàng)建帶有默認圖標iconpublicJCheckBox(StringnameIconicon創(chuàng)建一個帶有默認圖標和名字namepublicvoidsetIcon(IcondefaultIconpublicvoidsetSelectedIcon(IconselectedIcon)設置選擇框選中狀態(tài)下的圖標。publicbooleanisSelected如果選擇框處于選中狀態(tài)該方法返回true,否則返回false。publicStringgetText()選擇框調(diào)用該方法可以獲取選擇框的名稱。選擇框上的ItemEvent事發(fā)生ItemEvent事件的事件 監(jiān)視器的方法是接口方法:publicvoiditemStateChanged(ItemEvent和 ?TheInstituteofBusiness Chapter10Java JRadioButton單選按在一組單選按鈕中用戶只能選中一個例題10-使例題10- ?TheInstituteofBusiness Chapter10Java 下拉的子 下拉列表常用方publicvoidaddItem(ObjectanObject)下拉列表調(diào)用該方法增加選項。publicintgetSelectedIndex返回當前下拉列表中被選中的選項的索引。publicObjectgetSelectedItem()返回當前下拉列表中被選中的選項。.publicvoidremoveItemAt(intanIndex)從下拉列表的選項中刪除索引值是anIndexpublicvoidremoveAllItemspublicvoidaddItemListener(ItemListener)下向下拉列 下拉式列表上的ItemEvent發(fā)生ItemEvent事件的事件 監(jiān)視器的方法是接口方法:publicvoiditemStateChanged(ItemEvent例題10- ?TheInstituteofBusiness Chapter10Java§1010容JComponent子類創(chuàng)建的組件也都是容器JPanel面 .滾動窗格JScrollPane.拆分窗格JSplitPane.JLayeredPane ?TheInstituteofBusiness Chapter10Java§1013ComponentComponent類是所有組件的父類組件都是矩形形狀,組件本身有一個默認的坐標 ?TheInstituteofBusiness Chapter10Java§10.13.1組件的1、組件的常用publicvoidsetBackground(Colorc)設置組件的背景色。publicvoidsetForeground(Colorc)設置組件的前景色。publicColorgetBackground()獲取組件的背景色。publicColorgetForeground()獲取組件的前景色。2、Color類的構造publicColor(intred,intgreen,ingblue) ?TheInstituteofBusiness Chapter10Java 組件的字1、組件的常用方publicvoidsetFont(Fontf設置組件上的字體publicFontgetFont獲取組件上的字2、Font類創(chuàng)建的對象稱為字體對象。Font類的構造方publicFont(Stringname,intstyle,intFont類在java.awt包中3、獲取計算機上所有可用的字體名稱,并存放到字符串數(shù)GraphicsEnvironmentString例題10- ?TheInstituteofBusiness 2013級及信管專業(yè)基礎課 Chapter10Java 組件的大小與位publicvoidsetSize(intwidth,intheight)設置組件的大小publicvoidsetLocation(intx,inty設置組件在容器中的位publicDimensiongetSize返回一個Dimension對象,該對像含有名字是width和height的成員變量,with的值就是組件的寬度、height的值就是組件publicPointgetLocation()返回一個Point對象的 ,該對像含有名字是x和y的成員變量,x,y的值就是組件的左上角在容器的坐標系中的x坐標和y坐標。publicvoidsetBounds(intx,inty,intwidth,intheight)設置組件在容器中的位置和組件的大小.該方法相當于setSize方法和setLocation方法的組合。publicRectanglegetBounds返回一個Rectangle對象的,該對象含有名字是x、y、width和height的成員變量,x,y的值就是組件的左上角在容 ?TheInstituteofBusiness Chapter10Java 組件的激活與可見setEnabled(booleanb)設置組件是否可被激活setVisible(boolean)設置組件在該容器中的可見 ?TheInstituteofBusiness Chapter10Java§10 窗口事JFrame是Window凡是Winow子類創(chuàng)建的對象都可以觸發(fā)WidEet ?TheInstituteofBusiness Chapter10Java WindowListener接1、窗口使用addWindowlistener方法3、WindowListener接口中有7個方法:publicvoidwindowActivated(WindowEvente)當窗口從非激活狀態(tài)到激活時,publicvoidwindowDeactivated(WindowEvente)當窗口激活狀態(tài)到非激活狀態(tài)時,publicvoidwindowClosing(WindowEvente)當窗口正在被關閉時,監(jiān)視器調(diào)用該方publicvoidwindowClosed(WindowEvente)當窗口關閉時,監(jiān)視器調(diào)用該方法。publicvoidwindowIconified(WindowEvente)當窗口圖標化時,監(jiān)視器調(diào)用該方法。publicvoidwindowDeiconified(WindowEvente)當窗口撤消圖標化時,監(jiān)視器調(diào)publicvoidwindowOpened(WindowEvente)4、相關方setDefaultCloseOperation(intn) ?TheInstituteofBusiness Chapter10Java WindowAdapter適配WindowAdapter類實現(xiàn)了WindowListener接口。因此,例題10- ?TheInstituteofBusiness Chapter10Java§1015標任何組件上都可以發(fā)生鼠標事件,如:鼠標進入組發(fā)鼠標事件,即導致MouseEven象。 ?TheInstituteofBusiness Chapter10Java§10.15.1使用MouseListener接口處理鼠標getX獲取鼠標指針在事件源坐標系中的x-坐標。getY獲取鼠標指針在事件源坐標系中的y-坐標。getModifiers()獲取鼠標的左鍵或右鍵。MouseEventgetX獲取鼠標指針在事件源坐標系中的x-坐標。getY獲取鼠標指針在事件源坐標系中的y-坐標。getModifiers()獲取鼠標的左鍵或右鍵。getClickCountgetSource事件 監(jiān)視器的方法是addMouseListener(MouseListenerlistener)mouseExited(MouseEventmouseClicked(MouseEvent4.Java提供了便于處理鼠標事件的適配 MouseAdapter,該類實現(xiàn)了mouseExited(MouseEventmouseClicked(MouseEvent4.Java提供了便于處理鼠
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 夏季高溫施工措施
- 2025至2030年中國香香脆糖行業(yè)投資前景及策略咨詢研究報告
- 2025至2030年中國電子式調(diào)節(jié)閥行業(yè)投資前景及策略咨詢研究報告
- 2025至2030年中國新型多功能洗浴器行業(yè)投資前景及策略咨詢研究報告
- 2025至2030年中國手持式割草機行業(yè)投資前景及策略咨詢研究報告
- 2025至2030年中國存貯設備行業(yè)投資前景及策略咨詢研究報告
- 醫(yī)療核心制度自查報告及整改措施
- 2025至2030年中國內(nèi)置式雙人電腦桌行業(yè)投資前景及策略咨詢研究報告
- 2025至2030年中國Α-氧化鋁微粉行業(yè)投資前景及策略咨詢研究報告
- 2024年中國精梳棉毛兒童內(nèi)衣市場調(diào)查研究報告
- 2024年6月浙江高考歷史試卷(含答案解析)
- 2024年知識競賽-少先隊知識競賽考試近5年真題附答案
- 勞動合同(模版)4篇
- 保密工作會議領導講話稿
- 四年級數(shù)學上冊計算題過關訓練共20天
- 貨物采購供貨方案(技術方案)
- 安全生產(chǎn)積分制管理制度
- 蘇教版小學三年級科學上冊單元測試題附答案(全冊)
- 《弘揚教育家精神》專題課件
- 口腔門診醫(yī)院感染管理標準WST842-2024
- 2024年中考語文(北京卷)真題詳細解讀及評析
評論
0/150
提交評論