利用JAVA設計簡單聊天對話框_第1頁
利用JAVA設計簡單聊天對話框_第2頁
利用JAVA設計簡單聊天對話框_第3頁
利用JAVA設計簡單聊天對話框_第4頁
利用JAVA設計簡單聊天對話框_第5頁
已閱讀5頁,還剩10頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

第第頁《面向?qū)ο蟪绦蛟O計》課程設計報告題目:利用JAVA設計簡單聊天對話框?qū)I(yè):計算機科學與技術(shù)班級:10級(2)班姓名:***指導教師:姚老師成績:計算機與信息工程系二0二一年六月十二日目錄1.課程設計目的32.設計框架33.案例分析4程序清單6程序運行效果96.設計心得107.參考文獻111.課程設計目的在當今的信息時代,越來越多的聊天工具被應用,Java語言是當今流行的網(wǎng)絡編程語言,它具有面向?qū)ο?、與平臺無關(guān)、安全、多線程等特點。使用Java語言不僅可以實現(xiàn)大型企業(yè)級的分布式應用系統(tǒng),還能夠為小型的、嵌入式設備進行應用程序的開發(fā)。面向?qū)ο蟮拈_發(fā)方法是當今世界最流行的開發(fā)方法,它不僅具有更貼近自然的語義,而且有利于軟件的維護和繼承。此次課程設計的題目為簡單的聊天對話框,通過鞏固所學Java語言基本知識,增進Java語言編輯基本功,掌握JDK、JCreator等開發(fā)工具的運用,拓寬常用類庫的應用。使我們通過該教學環(huán)節(jié)與手段,把所學課程及相關(guān)知識加以融會貫通,全面掌握Java語言的編程思想及面向?qū)ο蟪绦蛟O計的方法,為今后從事實際工作打下堅實的基礎(chǔ)。設計框架的形成設計一個簡單的聊天對話框,單擊“清除”按鈕,則消息輸入文本框中的信息清除掉;單擊“發(fā)送”按鈕,則把消息發(fā)送到信息顯示框中。3.實例分析;(1.)通過匿名類實現(xiàn)可以通過匿名類實現(xiàn)“清除”按鈕的事件監(jiān)聽,在actionPerformed方法中,當單擊按鈕時進行相應的處理。本例中直接調(diào)用消息輸入框(jtaInput)的setText方法,設置輸入框的文本為空,以達到清除輸入框中已輸入文本的目的,代碼如下所示。jbClear.addActionListener(newActionListener(){ publicvoidactionPerformed(ActionEvente){ jtaInput.setText(""); } });(2.)通過Action實現(xiàn)在“發(fā)送”按鈕的事件處理中,通過設置其行為(Action)來實現(xiàn)。首先,需要定義一個Action,實現(xiàn)其actionPerformed方法。本例中,發(fā)生事件時能通過調(diào)用自定義的sendMessage方法來發(fā)送消息。對于“發(fā)送”按鈕,可調(diào)用setAction方法設置有按鈕事件發(fā)生時的行為,代碼如下所示。ActionsendMessage=newAbstractAction(){ publicvoidactionPerformed(ActionEvente){ sendMessage(); } };jbSend.setAction(sendMessage);(3.)處理鍵盤事件設置文本輸入框在用戶按下“Enter”鍵時發(fā)出消息,代碼如下所示。jtaInput.getInputMap().put(KeyStroke.getKeyStroke ("ENTER"),"send"); jtaInput.getActionMap().put("send",sendMessage);(a)調(diào)用getInputMap方法得到輸入框的InputMap,再用該InputMap的put方法實現(xiàn)鍵盤的綁定,具體可參見InputMap類的使用說明。本例中,綁定的鍵為“Enter“鍵。(b)調(diào)用getActionMap方法得到輸入框的ActionMap,再用ActionMap的put方法設置輸入框的行為,這里為調(diào)用sendMessage的Action。(4.)組件的相互控制在sendMessage方法中,調(diào)用聊天信息顯示框的insert方法插入最新收到的信息。本例中,從名字輸入框和消息輸入框中得到該信息。實際程序中應結(jié)合網(wǎng)絡編程,從不同的主機得到。最后用setText方法傳入空的字符串來清空用戶輸入的消息。代碼如下所示。privatevoidreplaceMessage(){ Stringmessage=jtfName.getText()+">"+jtaInput.getText()+"\n"; jtaChat.insert(message,jtaChat.getDocument().getLength());4.程序清單:importjava.awt.*;importjava.awt.event.*;importjavax.swing.*;publicclassActionDemoextendsJFrame{ JTextFieldjtfName; JTextAreajtaChat; JTextAreajtaInput; JButtonjbSend; JButtonjbClear; publicActionDemo(){ super("控件的相互控制"); Containercontainer=this.getContentPane(); JPanelp=newJPanel(); jtfName=newJTextField(10); p.add(newJLabel("主題:Writeonce,RunAnywhere.")); p.add(newJLabel("昵稱")); p.add(jtfName); container.add(p,BorderLayout.NORTH); jtaChat=newJTextArea(); container.add(newJScrollPane(jtaChat),BorderLayout.CENTER); Boxbox=newBox(BoxLayout.X_AXIS); jtaInput=newJTextArea(3,20); jbSend=newJButton(); jbClear=newJButton(); jbClear.setText("清除"); box.add(newJScrollPane(jtaInput)); box.add(jbClear); box.add(jbSend); container.add(box,BorderLayout.SOUTH); jbClear.addActionListener(newActionListener(){ publicvoidactionPerformed(ActionEvente){ jtaInput.setText(""); } }); ActionsendMessage=newAbstractAction(){ publicvoidactionPerformed(ActionEvente){ replaceMessage(); } }; jtaInput.getInputMap().put(KeyStroke.getKeyStroke ("ENTER"),"send"); jtaInput.getActionMap().put("send",sendMessage); jbSend.setAction(sendMessage); jbSend.setText("發(fā)送"); this.setSize(400,200); this.setVisible(true); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } privatevoidreplaceMessage(){ Stringmessage=jtfName.getText()+">"+jtaInput.getText()+"\n"; jtaChat.insert(message,jtaChat.getDocument().getLength()); jtaInput.setText(""); } publicstaticvoidmain(String[]args){ newActionDemo(); } }5.程序運行效果如圖所示單擊“發(fā)送”按鈕,則把消息發(fā)送到信息顯示框中。單擊“清除”按鈕,則消息輸入文本框中的信息清除掉;6.設計心得我花費了近一個多星期的時間,查閱了許多相關(guān)的資料,終于把這個Java聊天對話框程序基本實現(xiàn)了。在設計的過程中了解到自己的知識還是比較有限,回顧起此次java設計,至今我仍感慨頗多,的確,從選題到定稿,從理論到實踐,在整整一星期日子里,可以說的上是苦多于甜,但是可以學到很多很多的的東西,同時不僅可以鞏固了以前所學過的知識,而且學到了很多在書本上所沒有學到過的知識。通過這次課程設計使我懂得了理論與實際相結(jié)合是很重要的,只有理論知識是遠遠不夠的,只有把所學的理論知識與實踐相結(jié)合起來,從理論中得出結(jié)論,才能真正掌握這門技術(shù),也提高了自己的獨立思考的能力。在設計的過程中遇到問題,可以說得上是困難重重,這畢竟第一次做的,難免會遇到過各種各樣的問題,同時在設計的過程中發(fā)現(xiàn)了自己的不足之處,對以前所學過的知識理解得不夠深刻,掌握得不夠牢固,通過這次課程設計之后,一定把以前所學過的知識重新溫故。通過此次課程設計,將我本學期所學的JAVA知識得到鞏固和應用,在設計的過程中我遇到了很到問題,不過在老師和同學們的幫助和自己的思考下還是很好的完成了。這此課程設計還讓我懂得了寫程序不能閉門造車,要努力拓寬知識面,開闊視野,拓展思維。它還讓我學會了在網(wǎng)上查閱那些無限的資料。讓我不僅學會了書本上的知識,還讓自己能夠面對困難并且克服它。7.參考文獻[1]張思民,梁維娜.Java程序設計實踐教程[M].北京:清華大學出版社2021.8:1-21[2]葉核亞.JAVA2程序設計實用教程[M](第2版).北京:電子工業(yè)出版社;2021.4.[3]范立南,韓曉微,王忠石等.基于多結(jié)構(gòu)元的噪聲污染灰度圖像邊緣檢測研究[J].武漢大學學報(工學版);2021.45-49[4]陳國君、陳磊、陳錫禎、劉洋.Java2程序設計基礎(chǔ)[M],第一版.北京:清華大學出版社,2021:324-337

論大學生寫作能力寫作能力是對自己所積累的信息進行選擇、提取、加工、改造并將之形成為書面文字的能力。積累是寫作的基礎(chǔ),積累越厚實,寫作就越有基礎(chǔ),文章就能根深葉茂開奇葩。沒有積累,胸無點墨,怎么也不會寫出作文來的。寫作能力是每個大學生必須具備的能力。從目前高校整體情況上看,大學生的寫作能力較為欠缺。一、大學生應用文寫作能力的定義那么,大學生的寫作能力究竟是指什么呢?葉圣陶先生曾經(jīng)說過,“大學畢業(yè)生不一定能寫小說詩歌,但是一定要寫工作和生活中實用的文章,而且非寫得既通順又扎實不可?!睂τ诖髮W生的寫作能力應包含什么,可能有多種理解,但從葉圣陶先生的談話中,我認為:大學生寫作能力應包括應用寫作能力和文學寫作能力,而前者是必須的,后者是“不一定”要具備,能具備則更好。眾所周知,對于大學生來說,是要寫畢業(yè)論文的,我認為寫作論文的能力可以包含在應用寫作能力之中。大學生寫作能力的體現(xiàn),也往往是在撰寫畢業(yè)論文中集中體現(xiàn)出來的。本科畢業(yè)論文無論是對于學生個人還是對于院系和學校來說,都是十分重要的。如何提高本科畢業(yè)論文的質(zhì)量和水平,就成為教育行政部門和高校都很重視的一個重要課題。如何提高大學生的寫作能力的問題必須得到社會的廣泛關(guān)注,并且提出對策去實施解決。二、造成大學生應用文寫作困境的原因:(一)大學寫作課開設結(jié)構(gòu)不合理。就目前中國多數(shù)高校的學科設置來看,除了中文專業(yè)會系統(tǒng)開設寫作的系列課程外,其他專業(yè)的學生都只開設了普及性的《大學語文》課。學生寫作能力的提高是一項艱巨復雜的任務,而我們的課程設置僅把這一任務交給了大學語文教師,可大學語文教師既要在有限課時時間內(nèi)普及相關(guān)經(jīng)典名著知識,又要適度提高學生的鑒賞能力,且要教會學生寫作規(guī)律并提高寫作能力,任務之重實難完成。(二)對實用寫作的普遍性不重視?!按髮W語文”教育已經(jīng)被嚴重地“邊緣化”。目前對中國語文的態(tài)度淡漠,而是呈現(xiàn)出全民學英語的大好勢頭。中小學如此,大學更是如此。對我們的母語中國語文,在大學反而被漠視,沒有相關(guān)的課程的設置,沒有系統(tǒng)的學習實踐訓練。這其實是國人的一種偏見。應用寫作有它自身的規(guī)律和方法。一個人學問很大,會寫小說、詩歌、戲劇等,但如果不曉得應用文寫作的特點和方法,他就寫不好應用文。(三)部分大學生學習態(tài)度不端正。很多非中文專業(yè)的大學生對寫作的學習和訓練都只是集中在《大學語文》這一門課上,大部分學生只愿意被動地接受大學語文老師所講授的文學經(jīng)典故事,而對于需要學生動手動腦去寫的作文,卻是盡可能應付差事,這樣勢必不能讓大學生的寫作水平有所提高。(四)教師的實踐性教學不強。學生寫作能力的提高是一項艱巨復雜的任務,但在教學中有不少教師過多注重理論知識,實踐性教學環(huán)節(jié)卻往往被忽視。理論講了一大堆,但是實踐卻幾乎沒有,訓練也少得可憐。閱讀與寫作都需要很強的實踐操作,學習理論固然必不可少,但是閱讀方法和寫作技巧的掌握才是最重要的。由于以上的原因,我們的大學生的寫作水平著實令人堪憂,那么如何走出這一困境,筆者提出一些建議,希望能對大學生寫作水平的提高有所幫助。三、提高大學生應用寫作能力的對策(一)把《應用寫作》課設置為大學生的必修課。在中國的每一所大學,《應用寫作》應該成為大學生的必修課。因為在這個被某些人形容為實用主義、功利主義甚囂塵上的時代,也是個人生存競爭最激烈的時代,人們比任何時代都更需要學會寫作實用性的文章,比如職場競爭中的求職信,生活中的財經(jīng)文書、法律文書等,以提高個人的生存競爭能力。(二)端正大學生的學習態(tài)度。首先,要讓大學生充分認識到實用寫作課的重要性,這門課關(guān)乎到他人生的每一個方面,諸如就職,求愛,理財,人際交往等,是他終生都需要使用的一些基礎(chǔ)性的知識,也是他必備的一項生存技能。其次,實用寫作有它自身的規(guī)律和方法。它不是你想怎樣寫都行的,它有嚴格的格式性的要求,所以需要系統(tǒng)的研究學習。最后,實用寫作課的實踐性非常強,所以學生們不能只學不練,并且要克服手懶的壞習慣,勤學勤練,為今后的工作生活打好基礎(chǔ)。(三)注重實踐課的訓練。要提高大學生的實用寫作能力,那么實踐寫作環(huán)節(jié)是必不可少的。要想使學員真正具備實用寫作能力,必須

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論