国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

JavaSwing之記事本制作

2016-01-07 02:10:51夏慶英
關(guān)鍵詞:記事本制作

夏慶英

摘 要:記事本應(yīng)用程序的制作在Java程序設(shè)計(jì)課程的教學(xué)中具有非常典型的示范作用,該案例的制作涵蓋了圖形用戶界面、事件處理、文件讀寫、泛型等重要知識(shí)點(diǎn),在現(xiàn)代高等學(xué)校職業(yè)教育的方式手段中,Java Swing之記事本制作是很好的任務(wù)驅(qū)動(dòng)案例,所以,接下來(lái)首先從搭建圖形用戶界面環(huán)境入手,其次,介紹圖形用戶界面布局管理,以及常用組件的應(yīng)用技巧,最后,實(shí)現(xiàn)文件的保存、打開(kāi)、文本編輯等功能。

關(guān)鍵詞:Java Swing;記事本;制作

1 環(huán)境搭建

1.1 準(zhǔn)備工作

下載軟件WB_v1.7.0_UpdateSite_for_Eclipse4.4。

1.2 更新軟件

打開(kāi)eclipse,找到幫助菜單下的安裝新軟件,按照提示向?qū)B_v1.7.0_UpdateSite_for_Eclipse4.4安裝到eclipse中,安裝結(jié)束后需要重新啟動(dòng)eclipse。

1.3 使用環(huán)境

重新啟動(dòng)eclipse,新建Java 項(xiàng)目,命名為NotepadDemo。

2 界面布局

當(dāng)一個(gè)窗口中的組件較多時(shí),界面應(yīng)該簡(jiǎn)潔整齊,布局合理。Java采用布局管理器對(duì)容器中的組件進(jìn)行相對(duì)布局管理,當(dāng)改變?nèi)萜鞔笮r(shí),或者改變組件的大小,或者改變組件之間的相對(duì)位置,保證組件不會(huì)被遮蓋并且容器沒(méi)有空白區(qū)域。

Java提供多種風(fēng)格和特點(diǎn)的布局管理器,每種布局管理器指定一種組件之間的相對(duì)位置。Java.awt布局管理器類主要有FlowLayout流、BorderLayout邊、GridBagLayout網(wǎng)格包及GridLayout風(fēng)格。

布局是容器類的特性,每種容器都有一種默認(rèn)布局。Window容器類的默認(rèn)布局是BorderLayout,如果一個(gè)容器需要改變其默認(rèn)布局管理器,可以調(diào)用Container容器類的setLayout( )方法。本案例采用的布局管理器為內(nèi)容網(wǎng)格默認(rèn)的BorderLayout。

2.1 記事本之菜單制作

窗口菜單是相對(duì)于窗口的,它出現(xiàn)在窗口的標(biāo)題欄下,總是與窗口同時(shí)出現(xiàn)。窗口菜單由JMenuBar菜單欄、JMenu菜單和JMenuItem菜單項(xiàng)等組件組成。窗口上添加菜單欄,菜單欄中添加菜單,菜單中添加菜單項(xiàng)或子菜單,這樣形成了窗口菜單的多層結(jié)構(gòu)。菜單欄添加在窗口上方,不受布局管理器控制。

記事本案例的菜單有文件和編輯兩個(gè),文件菜單對(duì)應(yīng)的菜單項(xiàng)為新建、保存、打開(kāi)、退出,編輯菜單對(duì)應(yīng)的菜單項(xiàng)為撤銷、剪切、復(fù)制、粘貼、恢復(fù)。

菜單項(xiàng)新建、保存、打開(kāi)、退出、撤銷、剪切、復(fù)制、粘貼、恢復(fù)對(duì)應(yīng)的變量名為mnuItemNew、mnuItemSave、mnuItemOpen、mnuItemExit、mnuItemUndo、mnuItemCut、mnuItemCopy、mnuItemPaste、mnuItemRedo。

2.2 記事本之工具欄制作

添加工具欄對(duì)象組件,在其上添加字體選擇列表框、設(shè)置文字大小列表框、顏色按鈕組,以及字體樣式復(fù)選框。顏色按鈕組中具有紅色、綠色、藍(lán)色三個(gè)單選項(xiàng),字體樣式復(fù)選框包含粗體、斜體、下劃線三個(gè)復(fù)選項(xiàng)。

2.3 記事本之編輯區(qū)制作

向內(nèi)容網(wǎng)格中添加JTextArea文本域組件,再為文本域添加一個(gè)垂直滾動(dòng)條。具體的操作如下:JTextAreatextArea=new JTextArea;

JScrollPane scroll=new JScrollPane(textArea);

getContentPane().add(textArea,BorderLayout.CENTER);

getContentPane().add(scroll);

3 關(guān)鍵技術(shù)之事件處理機(jī)制

所謂事件處理,通俗地說(shuō)就是如何處理用戶應(yīng)用程序中的事件。而所謂事件,就是指像單擊鼠標(biāo)、鍵盤輸入、單擊菜單、文本區(qū)域內(nèi)輸入文本、單擊按鈕、單擊復(fù)選框、單擊列表框、單擊單選按鈕等組件,這些事件的發(fā)生必須要處理。處理之前一定要理解兩個(gè)概念,什么是事件源和事件。事件就是指用戶對(duì)組件發(fā)生的動(dòng)作,例如,單擊紅色單選按鈕后文本域內(nèi)的文本顏色為紅色,這個(gè)單擊動(dòng)作就是事件。事件源就是觸發(fā)動(dòng)作的組件,例如,前面提到的紅色單選按鈕就是事件源。事件處理,簡(jiǎn)單地說(shuō),就是用戶對(duì)事件源進(jìn)行操作,操作了事件源就產(chǎn)生了事件。接下來(lái),就是用戶觸發(fā)事件源產(chǎn)生了事件,該如何處理這些事件呢?此時(shí)需要事件監(jiān)聽(tīng)者,即系統(tǒng)接收到所產(chǎn)生的事件,然后根據(jù)這些事件作相應(yīng)的處理。

事件類的種類很多,其中包括了動(dòng)作事件(ActionEvent)、鼠標(biāo)事件(MouseEvent)、焦點(diǎn)事件(FocusEvent)等。以菜單事件為例來(lái)說(shuō)明事件處理的步驟及方法,首先,NotepadDemo要實(shí)現(xiàn)ActionListenter接口,并向該類中添加接口中的抽象方法public void actionPerformed(){},其次,對(duì)事件源(mnuItemSave等)添加事件偵聽(tīng)addActionListener(this),最后,對(duì)事件進(jìn)行處理,完成對(duì)文件的保存功能等。

4 關(guān)鍵技術(shù)之文件讀寫

在計(jì)算機(jī)系統(tǒng)中,數(shù)據(jù)流具有方向性,對(duì)數(shù)據(jù)流的基本操作有讀操作和寫操作,但一個(gè)數(shù)據(jù)流只能進(jìn)行讀或?qū)懼械囊环N操作,即對(duì)輸入數(shù)據(jù)流只能進(jìn)行讀操作,對(duì)輸出數(shù)據(jù)流只能進(jìn)行寫操作。在Java中有字節(jié)流以字節(jié)為單位讀/寫和字符流以字符為單位讀/寫兩種方式,在記事本的實(shí)例制作中文件讀寫的對(duì)象是文本,所以采用以字符為單位的讀寫方式。

①定義文件讀寫字符輸入輸出流,為提高讀取效率流采用緩沖技術(shù),即定義緩沖字符輸入輸出流,定義要保存或打開(kāi)的文件對(duì)話框,定義打開(kāi)或保存的文件對(duì)象,該對(duì)象要由文件對(duì)話框獲得的路徑和獲得的文件名來(lái)確定。

②編寫保存菜單和打開(kāi)菜單的事件處理代碼時(shí)要注意,在文件讀寫過(guò)程中的異常處理使用try-catch-finally語(yǔ)句來(lái)捕獲和處理一個(gè)或多個(gè)異常。

③關(guān)閉所有的輸入流和輸出流。

猜你喜歡
記事本制作
做個(gè)樹懶記事本
小狗記事本
童話世界(2020年29期)2020-09-25 07:39:50
動(dòng)物園
《計(jì)算機(jī)應(yīng)用基礎(chǔ)》微課設(shè)計(jì)與制作實(shí)踐
微課在高中英語(yǔ)教學(xué)中的應(yīng)用初探
南北橋(2016年10期)2016-11-10 16:55:12
應(yīng)用瀑布模型的MOOC制作方法
項(xiàng)目教學(xué)法在微電影制作教學(xué)中的應(yīng)用
土撥鼠的記事本
兰坪| 林州市| 保定市| 肃北| 靖远县| 雷波县| 仁化县| 琼中| 宝丰县| 乌恰县| 金坛市| 武冈市| 外汇| 蒙城县| 仙桃市| 宁乡县| 洞口县| 呈贡县| 平罗县| 巴青县| 德阳市| 淅川县| 胶南市| 汾西县| 于田县| 基隆市| 黄陵县| 平原县| 磴口县| 乃东县| 肥西县| 贞丰县| 巩义市| 朔州市| 全州县| 承德市| 资溪县| 通江县| 和平县| 贺州市| 叙永县|