2011-03-16 109 views
3

我想知道如何創建一個新的Swing控件。Java Swing自定義控件

我的問題所在的搖缺少某些部件(日期選擇器爲例)

我看着堆棧溢出(和一些其他網站),並發現了一些答案,但沒有成功(幾個環節沒有按」工作了)。

那麼你能指出我的方向嗎?

回答

2

您可以在應用程序中使用大量的組件。谷歌會幫你找到它們。日期選擇器的示例是JCalendarJava Swing Date Picker。只需下載它,將jar添加到您的應用程序並使用它。你可以很容易地將它作爲一個bean添加到IDE的調色板中,並像JButton一樣拖放它。 JCalendar還有JDayChooser,JYearChooser和一些微調bean以及JLocaleChooser。我一直在使用Kai Toedter的JCalendar幾年並高度推薦它。本地化很簡單。

如果要創建自己的控件,必須將它們創建爲Java Bean。對象必須是可序列化的,具有無參構造函數和訪問器,以及名爲set,get和is的增變器。關於JavaBeans的一篇古老但不錯的文章在Java-World。你可以學習JCalendar的Java源代碼。

2

看看SwingX,它着手解決您在覈心Swing中注意到的一些缺失組件。

相信我,你做不是想實現你自己的DatePicker。 SwingX有一個(JXDatePicker),它工作的很好,請看文章here瞭解更多。

3

從頭開始創建Swing組件的工作很多,因此可能首先嚐試在Web上查找某些內容可能更容易。

對於許多使用案例構成不同的Swing組件是一個很好的解決方案。所有Swing組件都可以包含子組件,例如將瀏覽按鈕添加到JTextField中相當容易。

如果你真的想創造一個全新的控制穿過去,也許這篇文章可以給你一個刺激:

How to Write a Custom Swing Component