- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第二十章swing元件
Java 1.1是採用AWT當圖形化使用者介面(GUI),其缺點是這些AWT元件並非純Java寫成,結果造成系統資源的浪費與使用的彈性不足(例如無法改變外觀或加上圖案)。 Java 1.2以後則推出Swing 元件,下圖是常用Swing元件的架構圖,以大寫字母J開頭者。 Swing元件並不是用來取代原有的AWT元件,當您使用Swing元件時,常常還是要使用舊有的AWT功能。例如,事件的處理(Event Handle)與版面配置(Layout Manager)。因此,您可以把Swing與AWT看成是相輔相成的兩樣工具。其次,由於絕大部份Swing元件均由純Java寫成(只有JFrame、JDialog、JWindow及JApplet例外),所以可以改善AWT所造成的系統資源浪費與缺乏彈性。(例如,Swing元件可任意加入圖案或動態的改變元件外觀。) 20-1 JFrame JFrame類別為Swing元件中,用來樣例表單(Frame)的元件,此元件為最常使用的容器元件,所以要使用Swing元件,均應繼承此類別,如以下敘述: public class 類別名稱 extends JFrame 此類別的套件全名是javax.swing,所以應匯入 import javax.swing.*; 但是Swing元件均是衍生java.awt.Container類別,所以亦應同AWT元件的使用,匯入以下兩個套件,才能擁有AWT的版面配置與事件處理。 import java.awt.*; Import java.awt.event.*; 事件 JFrame因衍生自Frame類別,所以其父代類別,舉凡Frame、Window、Container及Component的事件均可使用,且其用法均同AWT,請看以下範例說明。 20-1a 請寫一程式,於程式執行出現表單,並可按一下表單的視窗關閉鈕而結束程式。 1. 程式執行的初始畫面如下圖。 2. 可按一下視窗左上角的“關閉”鈕,結束程式的執行。 setDefaultCloseOperation方法 JFrame新增此一方法關閉視窗,其參數值有四種,如下所示: DO_NOTHING_ON_CLOSE 不作任何處理。 HIDE_ON_CLOSE 隱藏此視窗。 DISPOSE_ON_CLOSE 隱藏並釋放此視窗的資源。 EXIT_ON_CLOSE 結束視窗程式,同System.exit(0) 。 20-1b 同上範例,但用setDefaultCloseOperation方法取代WindowListener。 Container 於Frame類別是使用以下敘述於表單加入元件。 frame.sdd(元件) //frame代表Frame物件 但是,JFrame則希望是有類似Word或AutoCAD等多層次的效果,所以並不是直接將元件加入表單,而是先取得一個容器物件,此物件稱為Container。Container物件可以放置許多層板(Pane),其中最上面的是GlassPane,GlassPane下面則有非常多的LayeredPane,LayeredPane中有一個名為ContentPane則是提供一般視窗設計的一層,此層可設定是否加入MenuBar(功能表)。以上關於Container元件的層板敘述,如下圖所示。 以上GlassPane與LayeredPane則又統稱為一個虛擬的RootPane,其各層板的關係架構如下: ContentPane ContentPane是提供一般單層視窗設計的層板,取得此層板的敘述如下: Container c=getContentPane( ); 此時,c就代表一個層板,往後所有的容器或元件,均應放在此層板。版面配置的方式亦同AWT的用法。 版面配置 Swing雖然增加若干版面配置,但本書不予介紹,使用者均可沿用前面所介紹的版面配置,如FlowLayout、GridLayout或BorderLayout等配置。其次,Swing元件的版面配置亦同前面AWT的配置方式。 20-1c 本範例示範於JFrame上放置一個JLabel元件 20-2 JLabel JLabel 的功能與Label相近,但其使用的彈性更大,都是用來輸出某些文字,但JLabel更可輸出影像檔。 建構子 JLabel的建構子如下圖所示,已可加入影像圖片。 JLabel(Icon image) 使用指定的影像,樣例一個JLabel的物件實體。例如,以下敘述可建立一個label物件,此物件顯示“承佑.jpg”,如下圖。 ICon ICon是一個介面,所以應使用其實作的類別建立物體
您可能关注的文档
最近下载
- 新媒体营销课件 第11章 新媒体营销的前沿应用.pptx VIP
- 新媒体营销课件 第10章 视频圈的两座大山——哔哩哔哩、抖音平台.pptx VIP
- 新媒体营销课件 第9章 为优质“种草”,为大众求知——小红书、知乎.pptx VIP
- 新媒体营销课件 第8章 微信平台.pptx VIP
- 糖尿病心血管疾病管理.pptx
- 新媒体营销课件 第7章 数据:大数据营销.pptx VIP
- 新媒体营销课件 第6章 社群:社交裂变营销+社群运营.pptx VIP
- 新媒体营销课件 第5章 体验:游戏化营销+内容营销.pptx VIP
- 新媒体营销课件 第4章 连接:流量池+产品.pptx VIP
- 新媒体营销课件 第3章 新媒体营销时代的用户分析.pptx VIP
文档评论(0)