2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩15頁未讀, 繼續(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><b>  超級(jí)萬年歷</b></p><p><b>  1.課程設(shè)計(jì)的目的</b></p><p>  《JAVA程序設(shè)計(jì)》是計(jì)算機(jī)相關(guān)專業(yè)的必修專業(yè)基礎(chǔ)課程,其實(shí)踐性、應(yīng)用性很強(qiáng)。實(shí)踐教學(xué)環(huán)節(jié)是必不可少的一個(gè)重要環(huán)節(jié)。本課程的程序設(shè)計(jì)專題實(shí)際是計(jì)算機(jī)相關(guān)專業(yè)學(xué)生學(xué)習(xí)完《JAVA程序設(shè)計(jì)》課程后,進(jìn)行的一次全面的綜合訓(xùn)練,J

2、AVA程序設(shè)計(jì)的設(shè)計(jì)目的是加深對(duì)理論教學(xué)內(nèi)容的理解和掌握,使學(xué)生較系統(tǒng)地掌握程序設(shè)計(jì)及其在網(wǎng)絡(luò)開發(fā)中的廣泛應(yīng)用,基本方法及技巧,為學(xué)生綜合運(yùn)用所學(xué)知識(shí),利用軟件工程為基礎(chǔ)進(jìn)行軟件開發(fā)、并在實(shí)踐應(yīng)用方面打下一定基礎(chǔ)。編寫一個(gè)萬年歷理解圖像界面的基本組織窗口,以及類、方法的調(diào)用,以及添加控件、并在窗口中顯示,可以對(duì)年份、月份、當(dāng)前的時(shí)間進(jìn)行查詢方便用戶的使用。</p><p><b>  2.設(shè)計(jì)方案論證&

3、lt;/b></p><p><b>  2.1需求分析</b></p><p>  本次課程設(shè)計(jì)是編寫一個(gè)萬年歷程序,主要目的是加強(qiáng)對(duì)Java的實(shí)際運(yùn)用,了解圖形用戶界面的基本組件窗口、按紐(JButton)、標(biāo)簽(JLabel)、下拉表組件(JComboBox)、文本框(TextBox)、選擇框、查詢事件的處理,菜單的設(shè)計(jì)還有日期的計(jì)算等的使用方法,了解如何

4、使用布局管理器對(duì)組件進(jìn)行管理,以及如何使用Java的事件處理機(jī)制。</p><p>  萬年歷是一個(gè)強(qiáng)大的日歷系統(tǒng),通過它可以實(shí)現(xiàn)對(duì)過去,現(xiàn)在以及將來日期的查找,通過在年份對(duì)應(yīng)的下拉菜單中選擇要查詢的年份,再相應(yīng)的在月份對(duì)應(yīng)的下拉菜單選擇要查詢的月份,則可得到相應(yīng)的日歷。此外,還可以顯示出數(shù)字時(shí)間,很方便用戶的查詢。</p><p>  本實(shí)驗(yàn)是對(duì)圖形用戶界面,布局管理器的綜合運(yùn)用,理解J

5、AVA的時(shí)間處理機(jī)制,編寫?yīng)毩⑦\(yùn)行的窗口。</p><p><b>  2.2概要設(shè)計(jì)</b></p><p>  本程序涉及三個(gè)類,MainFrame為顯示日期部分的類,是程序中的主類,ClockAction</p><p>  是對(duì)所要查詢的年份及其月份進(jìn)行選擇的類,Clock是對(duì)當(dāng)前時(shí)間進(jìn)行顯示的類,位與整個(gè)界面的底部,程序運(yùn)行時(shí),只要運(yùn)

6、行MainFrame即可顯示出日期以及時(shí)間的詳細(xì)信息。以下是對(duì)這三個(gè)類的具體說明。</p><p>  2.2.1自定義類說明</p><p>  (1) ClockAction類</p><p>  作用:獲取當(dāng)前下拉列表中所選擇的信息</p><p>  實(shí)現(xiàn)的接口:ActionListener</p><p> 

7、 ActionListener用于接收操作事件的偵聽器接口。使用該類創(chuàng)建的對(duì)象可使用組件的 addActionListener 方法向該組件注冊(cè)。在發(fā)生操作事件時(shí),調(diào)用該對(duì)象的 actionPerformed 方法。ActionEvent指示發(fā)生了組件定義的動(dòng)作的語義事件。當(dāng)特定于組件的動(dòng)作(比如被按下)發(fā)生時(shí),由組件生成此高級(jí)別事件。事件被傳遞給每一個(gè) ActionListener 對(duì)象,這些對(duì)象是使用組件的 addActionLis

8、tener 方法注冊(cè)的,用以接收這類事件。</p><p>  ClockAction類的具體實(shí)現(xiàn)如下:</p><p>  //對(duì)當(dāng)前所選年份、月份的查詢</p><p>  class ClockAction implements ActionListener </p><p>  { public void actionPerform

9、ed(ActionEvent arg0) </p><p>  { int c_year, c_month, c_week; </p><p>  // 得到當(dāng)前所選年份 </p><p>  c_year = Integer.parseInt(com1.getSelectedItem().toString());</p><p>  //

10、 得到當(dāng)前月份,并減1,計(jì)算機(jī)中的月為0-11</p><p>  c_month = Integer.parseInt(com2.getSelectedItem().toString())-1; </p><p>  // 調(diào)用函數(shù)use,得到星期幾</p><p>  c_week = use(c_year, c_month); </p><

11、p>  // 調(diào)用函數(shù)Resetday</p><p>  Resetday(c_week, c_year, c_month); } </p><p><b>  } </b></p><p>  (2) MainFrame類</p><p><b>  作用:主類</b></p>

12、<p>  繼承的父類:JFrame</p><p><b>  實(shí)現(xiàn)的接口:沒有</b></p><p>  JFrame是MainFrame的父類,當(dāng)用戶試圖關(guān)閉窗口時(shí),JFrame 知道如何進(jìn)行響應(yīng)。用戶關(guān)閉窗口時(shí),默認(rèn)的行為只是簡(jiǎn)單地隱藏 JFrame。在多屏幕環(huán)境中,可以在不同的屏幕設(shè)備上創(chuàng)建一個(gè) JFrame。</p><

13、p><b>  主要方法說明:</b></p><p>  public static void main(String[] args) { </p><p>  JFrame.setDefaultLookAndFeelDecorated(true); </p><p>  new MainFrame();</p><

14、p><b>  }</b></p><p>  (3) Clock類</p><p><b>  作用:顯示時(shí)間的類</b></p><p>  繼承的父類:Canvas</p><p>  實(shí)現(xiàn)的接口:Runnable</p><p>  Canvas是Clock的父

15、類,它表示屏幕上一個(gè)空白矩形區(qū)域,應(yīng)用程序可以在該區(qū)域內(nèi)繪圖,或者可以從該區(qū)域捕獲用戶的輸入事件。Runnable接口由Clock類來實(shí)現(xiàn),設(shè)計(jì)該接口的目的是為希望在活動(dòng)時(shí)執(zhí)行代碼的對(duì)象提供一個(gè)公共協(xié)議。</p><p><b>  主要方法說明:</b></p><p>  //用來顯示時(shí)間的方法</p><p>  public void

16、paint(Graphics g){ </p><p>  Font f=new Font("宋體",Font.BOLD,16); </p><p>  //格式化時(shí)間顯示類型</p><p>  SimpleDateFormat SDF=new SimpleDateFormat("yyyy'年'MM'月'

17、;dd'日'HH:mm:ss"); </p><p>  Calendar now=Calendar.getInstance();</p><p>  //得到當(dāng)前日期和時(shí)間</p><p>  time=SDF.format(now.getTime()); </p><p>  g.setFont(f); <

18、/p><p>  g.setColor(Color.orange); </p><p>  g.drawString(time,45,25); </p><p><b>  } </b></p><p><b>  }</b></p><p><b>  2.3系統(tǒng)總體

19、設(shè)計(jì)</b></p><p>  本程序包括兩部分:一部分是MainFrame.java用來顯示日期,另一部分是Clock.java,用來顯示時(shí)間。編寫程序時(shí),首先創(chuàng)建MainFrame類,在MainFrame類中編寫顯示日期的代碼,再創(chuàng)建Clock類,再向Clock類中編寫顯示時(shí)間的代碼,把MainFrame類和Clock類放在同一個(gè)項(xiàng)目中,運(yùn)行程序時(shí),只需運(yùn)行MainFrame即可顯示出所有信息,

20、此時(shí),在界面上會(huì)顯示出相應(yīng)的日期,同時(shí),在界面的底部會(huì)顯示出當(dāng)前的時(shí)間。</p><p>  以下是程序的第一部分,也是程序的主體部分。運(yùn)行時(shí),只要運(yùn)行MainFrame.java即可實(shí)現(xiàn)日期的顯示。</p><p>  根據(jù)上面功能描述的介紹,對(duì)基于JAVA的超級(jí)萬年歷進(jìn)行總體功能模塊劃分,如圖1所示。</p><p><b>  圖1功能模塊示意圖&l

21、t;/b></p><p><b>  2.4系統(tǒng)詳細(xì)設(shè)計(jì)</b></p><p>  本系統(tǒng)共包括2個(gè)java源文件,類之間的關(guān)系如圖2所示,JAVA源文件及其功能如表所示。</p><p><b>  圖2 類關(guān)系圖</b></p><p>  本程序中有3個(gè)源文件分別是MainFrame

22、、Clock、ClockAction,MainFrame是本程序的主程序,為顯示日期部分的類。Clock實(shí)現(xiàn)使用線程進(jìn)行休眠的功能,用來顯示當(dāng)期的時(shí)間。ClockAction對(duì)當(dāng)前所選年份、月份的查詢。如表1所示。</p><p>  表1 JAVA源文件</p><p>  在主類MainFrame中包括的成員變量有面板、文本框、命令按鈕,實(shí)現(xiàn)向窗口中添加控件的功能,如表2所示。<

23、/p><p><b>  表2成員變量</b></p><p>  在主類MainFrame中包括的方法有MaunFrame(),實(shí)現(xiàn)初始化界面居中,如表3所示。</p><p><b>  表3方法</b></p><p>  在Clock類中包括的成員變量有類聲明、字符串,如表4所示</p&g

24、t;<p><b>  表4成員變量</b></p><p>  在Clock類中有4個(gè)方法,分別是方法actionPerformed()實(shí)現(xiàn)監(jiān)聽獲取當(dāng)前時(shí)間的功能、Init()實(shí)現(xiàn)界面初始化、ClockAction()實(shí)現(xiàn)設(shè)置查看的時(shí)間、ResetDay()實(shí)現(xiàn)使查看的時(shí)間正確。如表5所示。</p><p><b>  表5方法</b&

25、gt;</p><p>  在ClockAction類中包括的成員變量有,年、月、周,獲取當(dāng)前下拉列表中所選擇的信息,如表6所示。</p><p><b>  表6成員變量</b></p><p>  ClockAction類中有三個(gè)方法,分別是Clock(),該方法實(shí)現(xiàn)初始化線程。Run()方法實(shí)現(xiàn)運(yùn)行休眠。Paint()方法實(shí)現(xiàn)格式化時(shí)間顯

26、示。如表7所示。</p><p><b>  表7方法</b></p><p><b>  3.設(shè)計(jì)結(jié)果與分析</b></p><p>  程序正常運(yùn)行時(shí),顯示當(dāng)前的年份,月份,日期以及數(shù)字時(shí)間。如果想要實(shí)現(xiàn)對(duì)指定日期的查詢,可在“年份”對(duì)應(yīng)的下拉框中選擇所要查詢的年,在“月份”對(duì)應(yīng)的下拉框中選擇所要查詢的月即可。例如:查

27、詢2008年5月30日是星期幾。即在“年份”對(duì)應(yīng)的下拉列表中選擇2008,在“月份”對(duì)應(yīng)的下拉列表中選擇5,通過選擇,即可實(shí)現(xiàn)對(duì)日期的查詢,查詢后的結(jié)果,通過此程序,還可對(duì)其他時(shí)間查詢,按照查詢要求進(jìn)行選擇。如圖3所示。</p><p>  圖3 選擇年份、月份</p><p>  按照要求輸入相應(yīng)的查詢條件后,界面上即可顯示所要查詢的日期以及對(duì)應(yīng)顯示當(dāng)前的詳細(xì)時(shí)間。這樣,便可以對(duì)任何日期

28、進(jìn)行查詢了,為使用者提供了很大的幫助。如圖4所示。</p><p><b>  圖4顯示所選日期</b></p><p><b>  4.設(shè)計(jì)體會(huì)</b></p><p>  Java 語言是解釋執(zhí)行的高級(jí)編程語言,是面向?qū)ο蟮某绦蛟O(shè)計(jì)語言,功能強(qiáng)大,它是解釋執(zhí)行的,能跨平臺(tái)使用。具有較高的性能和高度的安全性,Java程序

29、的三級(jí)代碼安全檢查機(jī)制可以有效的防止非法代碼的入侵,阻止對(duì)內(nèi)存的越權(quán)訪問,能夠避免病毒的侵害,成為Internet上最安全的技術(shù)之一。并且支技多線程,可使用戶程序并行執(zhí)行,即有內(nèi)存垃圾自動(dòng)收集機(jī)制。Java語言是一種“直譯”式語言,即用Java編寫的程序首先被編譯成字節(jié)碼,再通過JVM解釋成機(jī)器碼,字節(jié)碼是Java 專有的一種中間碼,必須通過JVM來解釋才能運(yùn)行。在不同的平臺(tái)上,Java有不同的JVM,使用Java 字節(jié)碼可以跨越平臺(tái)的

30、限制,在不同的平臺(tái)上運(yùn)行。經(jīng)過了一個(gè)學(xué)期對(duì)《Java程序設(shè)計(jì)》的學(xué)習(xí),我們學(xué)習(xí)了理論知識(shí),了解了Java語言程序設(shè)計(jì)的思想,這些知識(shí)都為我們的下一步學(xué)習(xí)打下了堅(jiān)實(shí)的基礎(chǔ)。</p><p>  經(jīng)過這次課程設(shè)計(jì)使我對(duì)JAVA圖形用戶界面的有關(guān)知識(shí)有了更深入了解,如幾種布局管理器的使用方法,事件的處理機(jī)制,SWING的基本體系結(jié)構(gòu),SWING組件的使用方法,多媒體的實(shí)現(xiàn)手段等知識(shí)。完成了簡(jiǎn)單的萬年歷功能,本次課程設(shè)計(jì)

31、的主要內(nèi)容就是設(shè)計(jì)一個(gè)可以查詢?nèi)掌诘某绦颍ㄟ^選擇下拉列表中的年份以及月份來實(shí)現(xiàn)日期的查詢,通過它可以查詢到日期的一些具體信息,可以查詢所選日期是星期幾,還對(duì)星期六與星期日有特殊顏色的標(biāo)記,方便查看。此外,還可以實(shí)現(xiàn)顯示數(shù)字時(shí)間的功能,簡(jiǎn)單實(shí)用。通過課程設(shè)計(jì),能夠達(dá)到全面、深入理解和掌握所學(xué)內(nèi)容,能夠進(jìn)行簡(jiǎn)單的分析和判斷。這次課程設(shè)計(jì),雖說在設(shè)計(jì)過程中遇到了很多的困難,但是在老師的細(xì)心指導(dǎo)下,很多不會(huì)的問題都迎刃而解了。此次課程設(shè)計(jì)一方

32、面是為了檢查我們一個(gè)學(xué)期來我們學(xué)習(xí)的成果,另一方面也是為了讓我們進(jìn)一步的掌握和運(yùn)用它,同時(shí)也讓我們認(rèn)清自己的不足之處和薄弱環(huán)節(jié),加以彌補(bǔ)和加強(qiáng)。是對(duì)自己學(xué)習(xí)的一次很好的檢驗(yàn)。能完成這次的課程設(shè)計(jì),和身邊的同學(xué)和老師的幫助分不開的。在此對(duì)指導(dǎo)老師表示感謝,還有幫助過我的一些同學(xué),在此也表示謝意。</p><p><b>  5.參考文獻(xiàn)</b></p><p>  [1

33、]王銳. 基于單片機(jī)的萬年歷設(shè)計(jì)[J]. 河北:信息技術(shù),2014,09:213-216.</p><p>  [2]饒敏,邱德慧,劉雅斌. 基于NIOSⅡ的萬年歷設(shè)計(jì)[J]. 北京:微計(jì)算機(jī)信息,2009:45-100</p><p>  [3]陳佳,高維松. 基于桌面的多功能萬年歷設(shè)計(jì)與開發(fā)[J]. 河北:軟件刊,2013,02:72-74.</p><p> 

34、 [4]查榮. 基于單片機(jī)的多功能萬年歷設(shè)計(jì)[J]. 北京:機(jī)械制造與自化,2012,03:137-139.</p><p>  [5] 吳其慶. Java程序設(shè)計(jì)實(shí)例教程[M]. 北京:冶金工業(yè)出版社,2009:120-230.</p><p>  [6] 陳佳,高維松. 基于桌面的多功能萬年歷設(shè)計(jì)與開發(fā)[J]. 軟件導(dǎo)刊,2013.02:72-74.</p><p&

35、gt;  [7] 柳西玲,許斌. Java語言應(yīng)用開發(fā)基礎(chǔ)[M] .北京:清華大學(xué)出版社,2011.2:100-200</p><p>  [8] 施霞萍. Java程序設(shè)計(jì)教程[M].北京:機(jī)械工業(yè)出版社, 2008.6:111-121</p><p>  [9] 宛延闿.實(shí)用Java程序設(shè)計(jì)教程[M].北京:機(jī)械工業(yè)出版社, 2010.1:67-100</p><p

36、><b>  附錄</b></p><p>  MainFrame源文件中的代碼如下:</p><p>  import java.awt.BorderLayout; </p><p>  import java.awt.Color; </p><p>  import java.awt.GridLayout; &

37、lt;/p><p>  import java.awt.Toolkit; </p><p>  import java.awt.event.ActionEvent; </p><p>  import java.awt.event.ActionListener;</p><p>  import java.sql.Date; </p>

38、<p>  import java.util.Calendar; </p><p>  import javax.swing.JComboBox; </p><p>  import javax.swing.JFrame; </p><p>  import javax.swing.JLabel;</p><p>  impor

39、t javax.swing.JPanel;</p><p>  public class MainFrame extends JFrame { </p><p>  private static final long serialVersionUID = 1L; </p><p>  JPanel panel = new JPanel(new BorderLayou

40、t());</p><p>  JPanel panel1 = new JPanel();</p><p>  JPanel panel2 = new JPanel(new GridLayout(7, 7)); </p><p>  JPanel panel3 = new JPanel();</p><p>  JLabel[] label

41、= new JLabel[49]; </p><p>  JLabel y_label = new JLabel("年份"); </p><p>  JLabel m_label = new JLabel("月份"); </p><p>  JComboBox com1 = new JComboBox();</p>

42、<p>  JComboBox com2 = new JComboBox();</p><p>  int re_year, re_month; </p><p>  int x_size, y_size; </p><p>  String year_num; </p><p>  Calendar now = Calenda

43、r.getInstance(); // 實(shí)例化Calendar </p><p>  MainFrame() { </p><p>  super("萬年歷"); </p><p>  setSize(300, 350); </p><p>  x_size = (int) (Toolkit.getDefaultToolk

44、it().getScreenSize().getWidth());</p><p>  y_size = (int) (Toolkit.getDefaultToolkit().getScreenSize().getHeight());</p><p>  setLocation((x_size - 300) / 2, (y_size - 350) / 2); </p><

45、;p>  setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); </p><p>  panel1.add(y_label);</p><p>  panel1.add(com1); </p><p>  panel1.add(m_label); </p><p>  panel1.add(co

46、m2); </p><p>  for (int i = 0; i < 49; i++) { </p><p>  label[i] = new JLabel("", JLabel.CENTER);// 將顯示的字符設(shè)置為居中 </p><p>  panel2.add(label[i]); </p><p><

47、;b>  } </b></p><p>  panel3.add(new Clock(this)); </p><p>  panel.add(panel1, BorderLayout.NORTH); </p><p>  panel.add(panel2, BorderLayout.CENTER); </p><p>  

48、panel.add(panel3, BorderLayout.SOUTH); </p><p>  panel.setBackground(Color.white); </p><p>  panel1.setBackground(Color.white); </p><p>  panel2.setBackground(Color.white); </p&g

49、t;<p>  panel3.setBackground(Color.white); </p><p><b>  Init();</b></p><p>  com1.addActionListener(new ClockAction());</p><p>  com2.addActionListener(new ClockA

50、ction());</p><p>  setContentPane(panel);</p><p>  setVisible(true); </p><p>  setResizable(false); </p><p><b>  } </b></p><p>  class ClockAct

51、ion implements ActionListener { </p><p>  public void actionPerformed(ActionEvent arg0) { </p><p>  int c_year, c_month, c_week; </p><p>  c_year = Integer.parseInt(com1.getSelected

52、Item().toString()); // 得到當(dāng)前所選年份 </p><p>  c_month = Integer.parseInt(com2.getSelectedItem().toString()) - 1; // 得到當(dāng)前月份,并減1,計(jì)算機(jī)中的月為0-11 </p><p>  c_week = use(c_year, c_month); // 調(diào)用函數(shù)use,得到星期幾 &

53、lt;/p><p>  Resetday(c_week, c_year, c_month); // 調(diào)用函數(shù)Resetday </p><p><b>  } </b></p><p><b>  } </b></p><p>  public void Init() { </p><

54、;p>  int year, month_num, first_day_num; </p><p>  String log[] = { "日", "一", "二", "三", "四", "五", "六" }; </p><p>  for (i

55、nt i = 0; i < 7; i++) { </p><p>  label[i].setText(log[i]); </p><p><b>  } </b></p><p>  for (int i = 0; i < 49; i = i + 7) { </p><p>  label[i].setFo

56、reground(Color.red); // 將星期日的日期設(shè)置為紅色 } </p><p>  for (int i = 6; i < 49; i = i + 7) { </p><p>  label[i].setForeground(Color.green);// 將星期六的日期設(shè)置為綠色 } </p><p>  for (int i = 1;

57、i < 10000; i++) { </p><p>  com1.addItem("" + i); </p><p><b>  } </b></p><p>  for (int i = 1; i < 13; i++) { </p><p>  com2.addItem("&

58、quot; + i); </p><p><b>  } </b></p><p>  month_num = (int) (now.get(Calendar.MONTH)); // 得到當(dāng)前時(shí)間的月份 </p><p>  year = (int) (now.get(Calendar.YEAR)); // 得到當(dāng)前時(shí)間的年份 </p&g

59、t;<p>  com1.setSelectedIndex(year - 1); // 設(shè)置下拉列表顯示為當(dāng)前年 </p><p>  com2.setSelectedIndex(month_num); // 設(shè)置下拉列表顯示為當(dāng)前月 </p><p>  first_day_num = use(year, month_num);</p><p>  

60、Resetday(first_day_num, year, month_num); </p><p><b>  } </b></p><p>  public int use(int reyear, int remonth) { </p><p>  int week_num; </p><p>  now.set(r

61、eyear, remonth, 1); // 設(shè)置時(shí)間為所要查詢的年月的第一天 </p><p>  week_num = (int) (now.get(Calendar.DAY_OF_WEEK));// 得到第一天的星期 </p><p>  return week_num; </p><p><b>  } </b></p>

62、<p>  @SuppressWarnings("deprecation") </p><p>  public void Resetday(int week_log, int year_log, int month_log) { </p><p>  int month_day_score; // 存儲(chǔ)月份的天數(shù) </p><p> 

63、 int count; </p><p>  month_day_score = 0; </p><p>  count = 1;</p><p>  Date date = new Date(year_log, month_log + 1, 1); // now </p><p>  Calendar cal = Calendar.getI

64、nstance();</p><p>  cal.setTime(date); </p><p>  cal.add(Calendar.MONTH, -1); // 前個(gè)月 </p><p>  month_day_score = cal.getActualMaximum(Calendar.DAY_OF_MONTH);// 最后一天 </p><

65、p>  for (int i = 7; i < 49; i++) { // 初始化標(biāo)簽 </p><p>  label[i].setText("");</p><p><b>  } </b></p><p>  week_log = week_log + 6; // 將星期數(shù)加6,使顯示正確 </p&g

66、t;<p>  month_day_score = month_day_score + week_log; </p><p>  for (int i = week_log; i < month_day_score; i++, count++) { </p><p>  label[i].setText(count + ""); </p>

67、<p><b>  } </b></p><p><b>  } </b></p><p>  public static void main(String[] args) { </p><p>  JFrame.setDefaultLookAndFeelDecorated(true); </p>

68、<p>  new MainFrame();</p><p><b>  }</b></p><p><b>  } </b></p><p>  Clock源文件中的代碼如下:</p><p>  import java.awt.BorderLayout; </p>&

69、lt;p>  import java.awt.Color; </p><p>  import java.awt.GridLayout; </p><p>  import java.awt.Toolkit; </p><p>  import java.awt.event.ActionEvent; </p><p>  import

70、java.awt.event.ActionListener; </p><p>  import java.sql.Date; </p><p>  import java.util.Calendar; </p><p>  import javax.swing.JComboBox; </p><p>  import javax.swing

71、.JFrame; </p><p>  import javax.swing.JLabel; </p><p>  import javax.swing.JPanel; </p><p>  import java.awt.Canvas; </p><p>  import java.awt.Color;</p><p&g

72、t;  import java.awt.Font; </p><p>  import java.awt.Graphics; </p><p>  import java.text.SimpleDateFormat;</p><p>  import java.util.Calendar; </p><p>  class Clock ext

73、ends Canvas implements Runnable{ </p><p>  private static final long serialVersionUID = 3660124045489727166L; </p><p>  MainFrame mf; </p><p>  Thread t; </p><p>  Stri

74、ng time; </p><p>  public Clock(MainFrame mf){ </p><p>  this.mf=mf; </p><p>  setSize(280,40);</p><p>  setBackground(Color.white); </p><p>  t=new Thread

75、(this); //實(shí)例化線程 </p><p>  t.start(); //調(diào)用線程 </p><p><b>  } </b></p><p>  public void run(){</p><p>  while(true){ </p><p><b>  try{ </

76、b></p><p>  Thread.sleep(1000); //休眠1秒鐘 </p><p>  }catch(InterruptedException e){ </p><p>  System.out.println("異常");</p><p><b>  } </b></p&

77、gt;<p>  this.repaint(100); </p><p><b>  } </b></p><p><b>  } </b></p><p>  public void paint(Graphics g){ </p><p>  Font f=new Font(&quo

78、t;宋體",Font.BOLD,16); </p><p>  SimpleDateFormat SDF=new SimpleDateFormat("yyyy'年'MM'月'dd'日'HH:mm:ss");</p><p>  //格式化時(shí)間顯示類型 </p><p>  Calendar

79、 now=Calendar.getInstance();</p><p>  time=SDF.format(now.getTime()); //得到當(dāng)前日期和時(shí)間 </p><p>  g.setFont(f); </p><p>  g.setColor(Color.orange); </p><p>  g.drawString(tim

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲(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)論