zeyuphoenix

          愿我愛的人快樂,愿愛我的人快樂,為了這些,我愿意不快樂.

          Java的日歷

          Java的日歷是一個(gè)很常用的控件,實(shí)現(xiàn)界面布局從簡(jiǎn)單到復(fù)雜就有很多種,在加上公歷和陰歷的實(shí)現(xiàn)就更多了.這兒從最簡(jiǎn)單的做起,先做一個(gè)只能選擇當(dāng)前月的某一天的公歷的簡(jiǎn)單日歷,然后再做一個(gè)可以調(diào)整年月的日歷,最后做一個(gè)加入陰歷和節(jié)日的日歷.

          Java的日歷實(shí)現(xiàn)也不復(fù)雜,不明白Sun為什么不加到JDK里面,主要是依靠java.util.Calendar,依靠Calendar可以取得某一天是星期幾,是一個(gè)月的第幾天,也可以得出某個(gè)月第一天是星期幾,某個(gè)月有多少天,這樣就可以把日歷的基本畫出來了;再加上顏色設(shè)置和選擇后的設(shè)置就可以實(shí)現(xiàn)基本的日歷了.

          先看最簡(jiǎn)單的效果,只實(shí)現(xiàn)一個(gè)月的選擇:

          再看一個(gè)可以選擇年月日的,從一個(gè)JTextField里面點(diǎn)出下拉,這個(gè)是用JTable實(shí)現(xiàn)的,星期是JTableHeader,顯示是JTable的單元格,只需要設(shè)置JTable的值和Renderer就可以顯示組件了,值的計(jì)算是通過Calender實(shí)現(xiàn)的.



          工程目錄如下:

          然后是一個(gè)用控件的形式來顯示的,JPanel上使用GridLayout,放置顯示的組件,然后根據(jù)Canlendar設(shè)置值和顯示:



          工程目錄如下:

          最后是在上一個(gè)的基礎(chǔ)上添加陰歷,陰歷實(shí)現(xiàn)是參考BlogJava的一個(gè)高手的:




          工程目錄如下:

          本來是要詳細(xì)寫下日歷的,然后在寫其它的比如JtreeTable2D繪制等東西呢,可惜公司現(xiàn)在基本不怎么使用Swing,而且突然忙起來了,而我比較悲劇的是這個(gè)工作的上班地點(diǎn)在北五環(huán),而我住在南三環(huán),每天基本跨北京,一忙根本沒時(shí)間寫東西了,抽個(gè)星期天把以前的程序放在Google Code上了,也沒時(shí)間整理了(好不容易周末,也得Dota幾把呀),需要的自己去Down,大部分例子的XXXTest都是測(cè)試的方法.

          Google Code 地址: https://code.google.com/p/swingsource/

          posted on 2010-05-09 23:18 zeyuphoenix 閱讀(10043) 評(píng)論(8)  編輯  收藏 所屬分類: Java日歷

          評(píng)論

          # re: Java的日歷 2010-05-10 09:46 caoshfei

          gooooood
          sofa
          wonderful  回復(fù)  更多評(píng)論   

          # re: Java的日歷 2010-05-12 17:04 何楊

          相當(dāng)不錯(cuò)。  回復(fù)  更多評(píng)論   

          # re: Java的日歷 2011-03-03 10:00 Chole

          加我qq:275421450 你的google code 根本就沒得. 傳一份到我qq 郵箱吧. 謝謝  回復(fù)  更多評(píng)論   

          # re: Java的日歷 2011-06-28 21:53 余小詩(shī)

          嗨,你好,你的那個(gè)萬年歷好好哦。可以發(fā)給我嗎?早就餓買的很想要哦,真的很好哦。  回復(fù)  更多評(píng)論   

          # re: Java的日歷[未登錄] 2012-05-03 16:38

          可不可心把萬年歷發(fā)給我,那個(gè)地址下載不了啊  回復(fù)  更多評(píng)論   

          # re: Java的日歷 2012-07-18 19:12 DolceVita

          您好 能發(fā)一份源碼學(xué)習(xí)下嗎? 謝謝了 你給的那個(gè)地址打不開,下載不了  回復(fù)  更多評(píng)論   

          # re: Java的日歷 2012-07-18 19:12 DolceVita

          地址 jiangquan199@163.com 謝謝了額  回復(fù)  更多評(píng)論   

          # re: Java的日歷 2013-06-21 22:22 李花

          能給我那個(gè)源代碼么,謝謝謝我真的很需要。。。交課設(shè) 發(fā)郵箱 721782612@qq.com  回復(fù)  更多評(píng)論   


          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           

          導(dǎo)航

          <2013年6月>
          2627282930311
          2345678
          9101112131415
          16171819202122
          23242526272829
          30123456

          統(tǒng)計(jì)

          常用鏈接

          留言簿(52)

          隨筆分類

          隨筆檔案

          搜索

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 宜宾县| 定结县| 兰西县| 连州市| 张家川| 沙坪坝区| 田阳县| 洪泽县| 桑日县| 榆社县| 民权县| 喜德县| 丰宁| 广宗县| 灵宝市| 天门市| 郴州市| 罗田县| 平远县| 洛宁县| 桐乡市| 怀安县| 和静县| 深水埗区| 大同市| 台南县| 安龙县| 拜泉县| 台东县| 随州市| 左权县| 察雅县| 东乡县| 怀来县| 获嘉县| 营山县| 绥德县| 元氏县| 嘉善县| 姜堰市| 临邑县|