課程設(shè)計(jì)--使用多線程技術(shù)實(shí)現(xiàn)動(dòng)畫效果_第1頁(yè)
已閱讀1頁(yè),還剩10頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、<p>  課 程 設(shè) 計(jì) 報(bào) 告</p><p>  課程設(shè)計(jì)名稱 Java課程設(shè)計(jì) </p><p>  題目:使用多線程技術(shù)實(shí)現(xiàn)動(dòng)畫效果的Java程序設(shè)計(jì)</p><p>  1 課程設(shè)計(jì)教學(xué)條件要求 eclipse/ netbeans/ Jbuilder </p><p>

2、<b>  2 課程設(shè)計(jì)任務(wù)</b></p><p>  編寫一個(gè)Java Application程序或Java Applet小程序,在界面上自動(dòng)出現(xiàn)由小到大變換的圓,圓出現(xiàn)的位置與顏色隨機(jī),變到150直徑時(shí)擦除,重新再出現(xiàn)圓;變換速度由HTML文件傳入的參數(shù)(控制sleep時(shí)間)控制。</p><p>  3 課程設(shè)計(jì)報(bào)告書主要內(nèi)容</p>&

3、lt;p><b>  1 需求分析</b></p><p><b>  2 總體設(shè)計(jì)</b></p><p>  2.1 設(shè)計(jì)的總體思想與算法描述</p><p><b>  2.2 模塊結(jié)構(gòu)圖</b></p><p>  2.3 各功能模塊的功能與處理流程描述<

4、;/p><p><b>  2.4 界面設(shè)計(jì)</b></p><p>  3 各功能模塊程序設(shè)計(jì)</p><p>  按照功能模塊的功能與處理流程描述給出詳細(xì)的程序代碼,并給出重點(diǎn)語句的注釋.</p><p><b>  4 小結(jié)</b></p><p><b> 

5、 4 課程設(shè)計(jì)要求</b></p><p>  1 按時(shí)到機(jī)房簽到,在指定機(jī)位上機(jī)。遵守機(jī)房紀(jì)律。</p><p>  2 獨(dú)立完成課程設(shè)計(jì)任務(wù)。指導(dǎo)教師到機(jī)位上指導(dǎo)學(xué)生和分時(shí)段驗(yàn)收學(xué)生完成的程序。</p><p>  3 按時(shí)提交打印的課程設(shè)計(jì)報(bào)告書。</p><p>  5 課程設(shè)計(jì)參考書</p><p

6、>  [1] 許文憲 懂子建. Java程序設(shè)計(jì)教程與實(shí)訓(xùn). 北京:北京大學(xué)出版社,2005.</p><p>  [2] 辛運(yùn)幃 .Java程序設(shè)計(jì).北京:清華大學(xué)出版社, 2004</p><p>  [3] [美]Echel,B .Java編程思想(第三版).北京:機(jī)械工業(yè)出版社,2005</p><p>  使用多線程技術(shù)實(shí)現(xiàn)動(dòng)畫效果</p

7、><p><b>  目 錄</b></p><p>  題目:使用多線程技術(shù)實(shí)現(xiàn)動(dòng)畫效果…................ 2</p><p><b>  1 需求分析3</b></p><p>  1.1 功能需求描述3</p><p><b>  2 總

8、體設(shè)計(jì)4</b></p><p>  2.1系統(tǒng)功能模塊設(shè)計(jì)4</p><p><b>  2.2界面設(shè)計(jì)4</b></p><p>  2.2.1系統(tǒng)主控平臺(tái)界面設(shè)計(jì)5</p><p><b>  3.程序設(shè)計(jì)5</b></p><p>  3.1 系

9、統(tǒng)主控平臺(tái)界面的程序設(shè)計(jì)5</p><p>  3.2 用戶管理模塊程序設(shè)計(jì)6</p><p><b>  4.小結(jié)7</b></p><p><b>  參考文獻(xiàn)8</b></p><p><b>  1 需求分析</b></p><p> 

10、 本系統(tǒng)描述的是要建立一個(gè)最基本的圖形,讓它可以按照動(dòng)畫效果變換,使之可以位置和顏色隨機(jī),到指定位置消失,用多線程技術(shù)實(shí)現(xiàn)最基本的動(dòng)畫效果,產(chǎn)生可以變換的圖像。</p><p>  1.1 功能需求描述</p><p>  實(shí)現(xiàn)動(dòng)畫效果的總體目標(biāo)是為了使一般的畫面更美觀,使畫面更令人喜歡,看上去不那么單調(diào)。</p><p>  具體需要實(shí)現(xiàn)以下一些基本功能。<

11、/p><p>  產(chǎn)生一個(gè)由小變大的圓。</p><p>  使圓的大小可以由小到大變換,并到指定位置消失。</p><p>  使圓的位置和顏色隨機(jī)出現(xiàn)。</p><p>  使圓變換的速度得到控制。</p><p><b>  2 總體設(shè)計(jì)</b></p><p>  依

12、據(jù)需求分析的結(jié)果,實(shí)現(xiàn)動(dòng)畫效果的系統(tǒng)要設(shè)計(jì)成一個(gè)由小變大的圓。此圓有顏色和出現(xiàn)位置隨機(jī),速度可以控制等特性。下面是系統(tǒng)的總體設(shè)計(jì):</p><p>  開發(fā)平臺(tái): eclipse/ netbeans/ Jbuilder </p><p>  2.1系統(tǒng)功能模塊設(shè)計(jì)</p><p>  依據(jù)需求分析結(jié)果,此系統(tǒng)可以由2個(gè)模塊聯(lián)合建成:形成圖形模塊、產(chǎn)生變換的模塊。&l

13、t;/p><p>  系統(tǒng)功能模塊圖2-1所示:</p><p>  圖2.1 系統(tǒng)功能模塊圖</p><p><b>  2.1.1 功能1</b></p><p><b>  2.2界面設(shè)計(jì)</b></p><p>  /*界面設(shè)計(jì)應(yīng)遵循簡(jiǎn)潔美觀,方便實(shí)用的基本原則。*/&l

14、t;/p><p>  2.2.1系統(tǒng)主控平臺(tái)界面設(shè)計(jì)</p><p>  圖2.2 系統(tǒng)運(yùn)行后的主界面圖</p><p><b>  3.程序設(shè)計(jì)</b></p><p>  /*按照功能模塊設(shè)計(jì)分小節(jié)給出實(shí)現(xiàn)各功能模塊的程序清單,對(duì)主要的核心程序代碼必須給出注釋。*/</p><p>  3.1 系

15、統(tǒng)主控平臺(tái)界面的程序設(shè)計(jì)</p><p>  啟動(dòng)應(yīng)用程序,為用戶提供主體操作界面,對(duì)系統(tǒng)功能統(tǒng)一管理。</p><p><b>  程序清單:</b></p><p>  package com;</p><p>  import java.applet.Applet;</p><p>  im

16、port java.awt.Color;</p><p>  import java.awt.Graphics;</p><p>  @SuppressWarnings("serial")</p><p>  public class guojian extends Applet {</p><p>  private i

17、nt radius,spread;</p><p>  public void init()</p><p><b>  {</b></p><p>  spread =50; //初始速度</p><p><b>  }</b></p><p>  public voi

18、d start()</p><p><b>  {</b></p><p>  radius = 0; //動(dòng)態(tài)圓半徑從0開始</p><p><b>  }</b></p><p>  public void paint(Graphics g)</p><p><

19、b>  {</b></p><p>  g.setColor(Color.red); //設(shè)置圓的線條顏色為紅色</p><p>  g.drawOval(10, 20 , radius, radius); //畫圓</p><p>  radius = ++radius%150; //讓圓的半徑在0-150范圍內(nèi)循環(huán)</p>

20、<p><b>  try</b></p><p><b>  {</b></p><p>  Thread.sleep(spread);</p><p><b>  }</b></p><p>  catch(Exception ep)</p><

21、;p><b>  {</b></p><p>  ep.printStackTrace();</p><p><b>  }</b></p><p>  repaint();</p><p><b>  }</b></p><p>  public

22、 void setSpread(int spread) //創(chuàng)建調(diào)整速度的方法</p><p><b>  {</b></p><p>  this.spread = spread;</p><p>  repaint();</p><p><b>  };</b></p><

23、;p><b>  }</b></p><p>  3.2 用戶管理模塊程序設(shè)計(jì)</p><p>  該模塊用于對(duì)畫面實(shí)現(xiàn)一定的控制,形成一定的特殊效果。具體代碼如下:</p><p><b>  <html></b></p><p><b>  <head>&

24、lt;/b></p><p>  <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /></p><p>  <title>Dynamic Circle</title></p><p>  <s

25、cript language="javascript" type="text/javascript"> </p><p>  //編寫javascript,實(shí)現(xiàn)與applet通信</p><p>  function changeSpread()</p><p><b>  {</b></

26、p><p>  var appletObj = document.getElementById("DynamicCircle"); //獲得applet</p><p>  var strSpread = document.getElementById("spread"); //獲得輸入速度</p><p>  var intS

27、pread = parseInt(strSpread.value);</p><p>  appletObj.setSpread(intSpread); </p><p>  //調(diào)用applet中的setSpread(int spread)方法,將速度設(shè)置為你輸入的數(shù)</p><p><b>  }</b></p><p

28、><b>  </script></b></p><p><b>  </head></b></p><p><b>  <body></b></p><p><b>  <form></b></p><p

29、>  請(qǐng)輸入速度:<input type="text" size="10" id="spread"></p><p>  <input type="button" onclick="changeSpread()" value="OK" /><br />&

30、lt;/p><p><b>  </form></b></p><p>  <object type="application/x-java-applet" code="com.DynamicCircle.class" archive="Dynamic.jar" width="400&

31、quot; height="350" id="DynamicCircle"></p><p><b>  </object></b></p><p><b>  </body></b></p><p><b>  </html>&l

32、t;/b></p><p><b>  4.小結(jié)</b></p><p>  java的課程設(shè)計(jì),今天終于算是完工了,好久都沒編過這么大的project了,雖然里面不是很完備,但是總體還是把一個(gè)java的程序做完了,當(dāng)然只是相對(duì)于我這個(gè)初學(xué)者來說??粗约旱某晒?,真的很高興,很有成就感?! ∑鋵?shí)剛剛上課程設(shè)計(jì)的時(shí)候,我并沒有現(xiàn)在這樣的熱心。當(dāng)時(shí)沒怎么放在心上

33、,所以我浪費(fèi)了不少時(shí)間。一個(gè)星期了,我代碼還沒搞出來。后來看到題目這么難,可參考的書目那么少,于是真的不想自己動(dòng)手,心里只是一個(gè)念頭,到時(shí)候隨便找一個(gè)抄上交差就可以了,完全是這么消極的想法,絲毫不認(rèn)為自己是能夠完成的?! ]辦法,我只好跑到圖書管去逛逛,自然先是去找一下有沒有值得抄的好書,抄點(diǎn)代碼,實(shí)在不想自己寫??墒钦襾碚胰?,都沒有現(xiàn)成的代碼可供參考,于是怨恨編者太懶。沒辦法,拿我們學(xué)的課本看看理論吧,總要知道些什么吧。就這樣,從那

34、天晚上,到今天,每天的下午,晚上差不多都在編程。一次次的失敗,一次次的有錯(cuò)誤,一次次的調(diào)試,很麻煩,也很煩躁的工作,我也給堅(jiān)持做下去了。現(xiàn)在想想來,真的很為自己感到自豪??粗约旱某晒?,一切途中的困難都忘記了,心中只有高興。 做什么事情,都要對(duì)認(rèn)真,既然是該你做的事,肯定</p><p><b>  參考文獻(xiàn)</b></p><p>  1 許文憲 懂子建. Ja

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論