freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于java的圖形用戶界面設(shè)計(jì)-文庫(kù)吧資料

2024-11-15 22:00本頁(yè)面
  

【正文】 , ().getMenuShortcutKeyMask(),false))。 ((39。 (browselistener)。, ().getMenuShortcutKeyMask(),false))。 ((39。 (browselistener)。, ().getMenuShortcutKeyMask(),false))。 14 ((39。 BrowseListener browselistener=new BrowseListener()。, ().getMenuShortcutKeyMask(),false))。 ((39。 ReloadListener reloadlistener=new ReloadListener()。, ().getMenuShortcutKeyMask(),false))。 ((39。 (scalelistener)。[39。 JMenuItem zinItem=new JMenuItem(Zoom In)。 (2)。 (closeItem)。 (this)。X39。 (closelistener)。)。 JMenuItem closeItem=new JMenuItem(Close All,39。 OpenListener openlistener=new OpenListener()。)。 JMenuItem openItem=new JMenuItem(Open,39。 JMenu faceMenu=new JMenu(Face)。)。 (39。 JMenuBar mbar=new JMenuBar()。[39。]39。 //JFrame 內(nèi)容窗格 //======================menu============================ String[] editItems=new String[]{Zoom In,Zoom Out}。 setIconImage(())。 public JImageViewer(){ //構(gòu)造函數(shù) super(Vision)。 int internalX。 JSplitPane jsp。 JDesktopPane desktop。 import .*。 import .*。 致謝 參考文獻(xiàn) [1]印旻 . Java語(yǔ)言與面向?qū)ο蟪绦蛟O(shè)計(jì).北 京:清華大學(xué)出版社, 2020. 183~ 184 [2]Marc Loy, Robert Eckstein, Dave Wood 等. Java Swing(第二版 ).北京:清華大學(xué)出版社, 2020. 1~ 682 [3]邵榮. Java編程實(shí)踐指南.北京:清華大學(xué)出版社, 2020. 90~ 120 [4]Kenh F. Krutsch, David S. Cargo, Virginia Howlett. Java用戶界面編程指南.北京:電子工業(yè)出版社, 2020. 10~ 30 [5]James Hobart.出色圖形用戶界面(GU I)設(shè)計(jì)規(guī)范. 2020 [6]張晨,付冰,趙軍等. Java2應(yīng)用編程 150例.北京:電子工業(yè)出版社, 2020. 9~ 11 [7]張洪斌. Java程序設(shè)計(jì)白事通.北京:清華大學(xué)出版社, 2020. 205~ 322 [8]唐大仕. Java程序設(shè)計(jì).北京:北方交通大學(xué)出版社, 2020. 295~ 303 [9]譚浩強(qiáng). Java編程技術(shù).北京:人民郵電出版社, 2020. 183~ 185 [10]Rogers Cadenhead, Laura Lemay. 21天學(xué)通 Java2(第三 版).北京:人民郵電出版社,2020. 440~ 447 [11]nkoffe.分享 Swing 學(xué)習(xí)的一些經(jīng)驗(yàn). 2020 附錄 主要部分源代碼如下: // import .*。另外,打開(kāi)文件的對(duì)話框,最好也能有預(yù)覽的功能。如對(duì)于樹(shù) 12 的選擇事件,如果當(dāng)用戶打開(kāi)其中某一文件夾節(jié)點(diǎn)時(shí),在右邊的圖像瀏覽區(qū)能夠顯示出該文件夾內(nèi)的所有圖像的縮略圖,雙擊縮略圖,就能打開(kāi)圖像。 這個(gè)圖像瀏覽器 運(yùn)行良好,能打開(kāi) gif、jpg、 png 格式的文件,完成前一張、后一張、放大、縮小等操作。另外,前后翻頁(yè)的功能在代碼實(shí)現(xiàn)上方法不太好,導(dǎo)致結(jié)果不是很穩(wěn)定,不過(guò)還是能夠達(dá)到按序?yàn)g覽某文件夾內(nèi)所有圖像的效果,這個(gè)文件夾是當(dāng)前得到焦點(diǎn)的圖像窗口中所顯示的圖像文件所在的文件夾。界面中 對(duì)功能鍵都給出了相應(yīng)的提示和快捷鍵。 程序執(zhí)行后,歡迎屏幕如圖7;進(jìn)入主界面,打開(kāi)三幅圖像后,進(jìn)行“平鋪”操作的效果如圖8。 (frame)。 setContentAreaFilled(false)。 通過(guò)以下三條語(yǔ)句去掉按鈕邊框: setBorderPainted(false)。當(dāng)樹(shù)中節(jié)點(diǎn)被選中時(shí),觸發(fā)選擇事件,將當(dāng)前路徑的文件,賦給屬性 currentfile,以便將當(dāng)前樹(shù)中選中的文件傳遞給其它類(lèi)。對(duì)節(jié)點(diǎn)展開(kāi)事件進(jìn)行了處理,因?yàn)檎归_(kāi)節(jié)點(diǎn),獲取節(jié)點(diǎn)信息時(shí),處理的時(shí)可能會(huì)比較長(zhǎng),為了不讓界面的操作凍結(jié),其中使用了線程。對(duì)樹(shù)中節(jié)點(diǎn)的圖標(biāo)進(jìn)行了設(shè)置,不同狀態(tài)的節(jié)點(diǎn)使用不同的圖標(biāo),同時(shí)增加了 tooltip支持。其中的主要方法 expand(),是對(duì)節(jié)點(diǎn)展開(kāi),獲取子節(jié)點(diǎn)的具體實(shí)現(xiàn)。 其中定義了4個(gè)內(nèi)部類(lèi): ①F ileNode:定義文件節(jié)點(diǎn)類(lèi)。 //滾動(dòng)窗,當(dāng)圖像過(guò)大時(shí),可以滾動(dòng)滾動(dòng)條來(lái)查看 JImageViewer JToolBarPanel JFancyButton JImageFrame JSplashWindow TreeExplorer ExampleFileFilter ImageFilter LnFListener JPanel JMenuBar JToolBarPanel JToolBar JFancyButton JSplitPane TreeExplorer JLabel JDesktopPane JImageFrame 說(shuō)明 :邊框色與所用組件對(duì)應(yīng)如下(粗體表示標(biāo)準(zhǔn)組件 ,粗斜體表示擴(kuò)展的組件) 10 JLabel jlab。 //當(dāng)前圖像 File file。另外,其中定義了內(nèi)部類(lèi)OpenListener、 CloseallListener、 TitleActionListener、 BrowseListener、 ScaleListener,它們都實(shí)現(xiàn)了 ActionListener,分別處理“打開(kāi)”(文件)、“關(guān)閉所有圖像窗口”、“平鋪窗口”、“前后翻頁(yè)”和“放大縮小”的命令。其中 ExampleFileFilter 是從 JDK 中demo/jfc/FileChooserDemo 的源 文件 中借用 的, JToolBarPanel 則借 鑒于 JDK 中demo/jfc/swingset2 中的 中定義的 ToolBarPanel 類(lèi)。 圖5標(biāo)明了以上所提組件在界面上的位置安排: 9 圖5 圖形界面詳細(xì)布局安排(主類(lèi) JImageViewer 所使用組件) (四) 主要模塊功能及實(shí)現(xiàn) 實(shí)現(xiàn)這個(gè)程序,共定義了9個(gè)類(lèi)(不計(jì)內(nèi)部類(lèi))。 另外,打開(kāi)文件的對(duì)話框使用了 JFileChooser,為了在選擇文件中只顯示 gif、 jpg、png格式的文件,使用了 demo/jfc下 FileChooserDemo中的 ExampleFileFilter( 繼承于 )。 圖像窗口由 JInternalFrame 擴(kuò)展的自定 義類(lèi) JImageFrame 實(shí)現(xiàn)。 樹(shù)形區(qū)域使用自定義類(lèi) TreeExplorer, 為了在樹(shù)中只列出 gif、 jpg、 png格式的文件,使 用自定 義類(lèi) ImageFilter(實(shí) 現(xiàn)接口 )。為了使用戶界面更加整潔,美觀,使用了由 JButton 擴(kuò)展來(lái)的自定義類(lèi) JFancyButton,該類(lèi)實(shí)現(xiàn)的按鈕,不僅具有其父類(lèi)的可以設(shè)置一般狀態(tài)、鼠標(biāo)經(jīng)過(guò)狀態(tài)、鼠標(biāo)點(diǎn)擊狀態(tài)的不同圖標(biāo), 還去掉了普通按鈕具有的邊框。 操作區(qū)內(nèi)另有工具欄, 使用 JToolBar,為了讓工具欄能更好地被拖出和放回原位,而不影響界面的布局,使用自定義的類(lèi) JToolBarPanel,該類(lèi)是 JPanel 的子類(lèi),并實(shí)現(xiàn)了ContainerListener 接口,當(dāng)容器內(nèi)容因?yàn)橛心骋唤M件被加入或刪除而發(fā)生改變時(shí),該監(jiān)聽(tīng)器的相關(guān)方法將被觸發(fā),以調(diào)整布局。 操作區(qū) JPanel,內(nèi)加載 JMenuBar,菜單欄能完成所有操作。并實(shí)現(xiàn)接口 Runnable,以控制程序剛啟動(dòng)時(shí),只顯示歡迎屏幕,主線程休眠3秒。 (三)組件的選用 歡迎屏幕,以無(wú)邊框的窗口顯示。 3. 圖像瀏覽區(qū) 沒(méi)有任何操作,只是供顯示打開(kāi)的圖像窗口的載體。其中包括一個(gè)菜單欄和一個(gè)工具欄。配置 完后,要重新啟動(dòng)計(jì)算機(jī),環(huán)境變量才能有效。新建變量 lib,值設(shè)置為: d:\ \lib;新建變量 path,值設(shè)置為: d:\ \bin。 在 windows XP 操作系統(tǒng)下,選擇“我的電腦” (右鍵 ),高級(jí) ,環(huán)境變量。 模 型 視 圖 控制器 模型將數(shù)據(jù)傳給視圖以進(jìn)行繪制 視圖決定傳給控制器的事件 控制器根據(jù)接收的事件更新模型 模 型 視 圖 控制器 組件 UI 代理 7 2.環(huán)境配置 ① 安裝 (在 D 盤(pán)下)。 ⑦圖像被改變后,能重新加載圖片。 ⑤能進(jìn)行前一頁(yè),后一頁(yè)的操作,使當(dāng)前處于活動(dòng)狀態(tài)的圖像窗口顯示與當(dāng)前圖像文件相鄰的其它圖像文件。 ③打開(kāi)多個(gè)圖像后,可將其平鋪顯示。 圖3 對(duì)于 Swing而言,視圖和控制器被合并成一個(gè) UI代理對(duì)象中 四 圖像瀏覽器的設(shè)計(jì)與實(shí)現(xiàn) (一) 需求分析 1.功能需求 ①打開(kāi)一個(gè)圖像文件。使用 Java 語(yǔ)言捆綁圖形功能和事件處理會(huì)容一些,因?yàn)樵S多事件處理是使用 AWT的。這個(gè)設(shè)計(jì)將視圖和控制器對(duì)象合并到一個(gè)元素中,即 UI 代理,該元素將組件繪制到屏幕上,并處理GUI 事件??刂破鳑Q定了每個(gè)組件如何對(duì)事件作出反應(yīng)。 3.控制器 控制器是用戶界面的一部分,它指示組件如何與事件進(jìn)行交互。又如,幾乎所有窗口框架都有一個(gè)位于窗口頂端的標(biāo)題欄。 2.視圖 視圖是指組件在屏幕上的表現(xiàn)形式。另一方面,菜單可能只包含一個(gè)用戶用來(lái)從中進(jìn)行選擇的菜單項(xiàng)列表。不同類(lèi)型的組件有不同的模型。每個(gè)元素都對(duì)組件的表現(xiàn)起著至關(guān)緊要的作用。 5 圖1 Swing組件層次結(jié)構(gòu) (三) MVC體系結(jié)構(gòu) Swing使用模型-視圖-控制器體系結(jié)構(gòu) (MVC)作為它的每個(gè)組件的基本設(shè)計(jì)。 Windows和 Motif外觀風(fēng)格的具體實(shí)現(xiàn)在 的程序包中, Mac OS外觀風(fēng)格在 下。 定義了為每個(gè) Swing 組件建立可插拔外觀風(fēng)格的惟一元素。為了建立自定義事件,可以細(xì)分這個(gè)程序包中的各種事件,或者編寫(xiě)自己的事件類(lèi)。如果想建立自定義邊框,則可以細(xì)分這個(gè)程包中某個(gè)現(xiàn)有的邊框或者從頭開(kāi)始編寫(xiě)一個(gè)新的邊框。 包含對(duì)抽象邊框類(lèi)的定義和8
點(diǎn)擊復(fù)制文檔內(nèi)容
醫(yī)療健康相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1