国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

用Java Swing作一個日歷控制程序

2019-11-18 15:40:45
字體:
來源:轉載
供稿:網友

日期是最基本的數據形式之一,因此很多語言或者數據庫都提供了對日期的支持,或內置或提供這一類的庫。java也不例外;Java的應用編程接口提供了以跨平臺獨立語言的方式描述,計算,對比,顯示以及便攜式分析日期。

在這篇文章里,我要講講關于Swing的自定義控制,答應你在視覺上獲取時間信息而不是用敲命令的方式。用這種方法,你可以避免無效的時間信息,讓你的使用者以視覺的方式得到享受。

Java中的日期

Java描述日期和時間的方法使用傳統的Date命令或者Java的一些子庫。不管它的名字是什么,日期的類并沒有普通意義上的日期的概念(日,月,年等等)技術上講,它僅僅是從1970年1月1日 00:00:00 GMT開始百萬分之一秒的累加的一個結果。盡管這些關于日期的類有各種各樣的處理日期的方法,這都是不夠的。

為了方便的解決日期問題, JDK 1.1 介紹了一個抽象的類java.util.Calendar。具體的計算日期的子類都會根據日歷系統使用一個指向特定日期的指針。這是因為日歷系統歷來就是有很多種方法來計算自己的日期(比如陽歷,羅馬歷,陰歷)。

Java應用編程接口提供了名為java.util.GregorianCalendar的類來根據陽歷系統處理日期信息。

最終,名為java.text.DateFormat的類就是一種抽象的處理格式解釋日期種類的獨立于語言之外的方式。這種方式依靠那些慣例,法則,以及已知的語言要求的位置運行著。名為DateFormat的具體的子類進行實際的工作。例如,名為java.text.SimpleDateFormat的子類答應你根據現有的方式分析或者設定一個日期的格式。

總體來說,這三個最基本的類(Date, Calendar, 以及 DateFormat)提供了強大的靈活的處理日期的體系。也許開始看來會有些迷惑,但你一旦明白了,你就會看到這樣的結構是十分有意義的,并且在其背后有很強的邏輯背景。(看看JDK的API文檔,你就會得到根多的文檔和例子)

定做的日期控制

盡管,Java提供了你可以對日期數據操作的方法,假如讓你處理三個不同的類,看起來也有些麻煩。有時你需要使用很多方法,利用很多實體來完成一個簡單的任務。除那些之外,Swing并不能提供進入日期的組件。當然,假如使用標準的控制如text box也不難完成。不過,日期在應用中是如此的常見,以至于我們經常一遍一遍地寫相同的代碼,輸入,分析,檢查時間。

基于以上幾點原因考慮,我建立了一個簡單的自定義的控制,你可以使用它來訪問日期數據。基本上說,這就是一個顯示日期的標準的按鈕 (請看圖A)。

圖 A

用Java Swing作一個日歷控制程序(圖一)

自定義日期控制

當你點擊之后,會彈出一個日期對話框,并答應你選擇一個新的日期 (請看表格B)。

點擊OK鍵完成一次更新。

圖 B

用Java Swing作一個日歷控制程序(圖二)

  日歷對話框彈出

   這樣做簡化了應用邏輯,因為使用者不會訪問到一個無效的日期。并且由于對話框看上去像一個日歷,這樣做更有利于使用者把握星期幾這個非常有用的日期信息。

   自定義的按鍵控制在名為DateButton的類 (列表A)中描述。使用起來非常簡明—僅僅是列舉一個名為DateButton的實體,并且像加載普通的控制一樣把它加到一個方框中。

   按鍵就是表示的日期的實體,執行起來就像鍵入“date”命令的反映一樣。這就意外著只要名為PRopertyChangeListener的時間寄存器發生變化你就可以設置并得到時間。表格 A說明了名為 DateButton 的應用編程接口,并且 列表B是一個使用的例子。

   表格 A

  自定義的按鍵應用編程接口是十分簡單的。你可以利用其中的一個構造器來建立一個例子,并且正確地獲取或設置時間信息。需要注重的是這是一個標準的按鍵,也因此它繼續了很多標準按鍵的方式,包括注冊的方式。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 勃利县| 沂源县| 年辖:市辖区| 枣庄市| 龙游县| 济阳县| 元江| 布拖县| 平陆县| 曲阜市| 称多县| 秦安县| 绩溪县| 祥云县| 安西县| 西昌市| 罗源县| 达州市| 寻乌县| 紫云| 沅江市| 新昌县| 乌海市| 辉县市| 天祝| 寿阳县| 西乌珠穆沁旗| 桦甸市| 新津县| 新竹市| 平邑县| 惠州市| 扶绥县| 蕲春县| 河曲县| 许昌市| 竹北市| 绥滨县| 镇康县| 拜泉县| 新河县|