jwethand

          Nothing is particularly hard if you divide it into small jobs.
          posts - 21, comments - 18, trackbacks - 0, articles - 20

          Java Swing的一些注意

          Posted on 2006-12-27 16:58 jwethand 閱讀(358) 評(píng)論(0)  編輯  收藏
           1.頂層容器

            什么是頂層容器?當(dāng)我們使用Java進(jìn)行圖形編程的時(shí)候,圖在哪里繪制呢?我們需要一個(gè)能夠提供圖形繪制的容器,這個(gè)容器就被稱為頂層容器,你也可以把它想象成一個(gè)窗口。頂層容器是進(jìn)行圖形編程的基礎(chǔ),一切圖形化的東西,都必然包括在頂層容器中。在Swing中,我們有三種可以使用的頂層容器,它們分別是:

            JFrame:用來設(shè)計(jì)類似于Windows系統(tǒng)中的窗口形式的應(yīng)用程序。
            JDialog:和JFrame類似,只不過JDialog是用來設(shè)計(jì)對話框。
            JApplet:用來設(shè)計(jì)可以在嵌入在網(wǎng)頁中的Java小程序。

            如果需要使用Swing制作一個(gè)窗口類程序,我們的代碼看起來應(yīng)該是這樣:

          import javax.swing.*;

          public class KyodaiUI
          extends JFrame {
          ……
          }

          2.控件

            控件是構(gòu)成應(yīng)用程序界面的基本元素,按鈕、文本框、進(jìn)度條等,這些都是控件。控件(這里我們只討論可視化控件)又可以分為容器控件和非容器控件。從字面意義上來理解,容器控件就是能包含其他控件的特殊控件,例如,Java中的JPanel控件就屬于容器型控件,我們可以在JPanel中放置按鈕、文本框等非容器控件,你甚至可以在JPanel中再放置若干個(gè)JPanel控件(值得注意的是,頂層容器也是容器型控件,每一個(gè)窗口應(yīng)用程序中有且只能有一個(gè)頂層容器控件,換句話說,頂層容器不能包括在其他的控件中)。

            Java中的容器控件有很多,除剛才提到的JPanel外,還有JTabbedPane、JScrollPane等,非容器控件有JButton、JLabel、JTextField等。如果你需要向某個(gè)容器型的控件中添加控件,你可以使用 add(Component comp) 方法來實(shí)現(xiàn),如:

          JPanel panel = new JPanel();
          JButton button = new JButton();
          panel.add(button);

          3.邊框

            雖然我們使用了不同前景色來區(qū)別不同的區(qū)域,然而卻沒有層次感,加上邊框一定會(huì)漂亮許多。

            在Java中,所有以J打頭的Swing控件都可以使用setBorder方法來為自己設(shè)置邊框。邊框有很多種,線型、凸起、凹下、空的,你甚至可以自由組合形成個(gè)人風(fēng)格。所有的Border都必須使用javax.swing.BorderFactory中提供的靜態(tài)方法來創(chuàng)建,比如:

          Border border = BorderFactory.createBevelBorder(BevelBorder.LOWERED,
          new Color(45, 92, 162),
          new Color(43, 66, 97),
          new Color(45, 92, 162),
          new Color(84, 123, 200));

            現(xiàn)在,我們將toolBar.setBackground(Color.white)改為toolBar.setBorder(border),立體效果是不是已經(jīng)出現(xiàn)了?


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


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 龙海市| 东港市| 山阳县| 利川市| 边坝县| 宜城市| 安吉县| 哈巴河县| 林周县| 泽普县| 呼和浩特市| 保定市| 常宁市| 彭州市| 定陶县| 宜都市| 习水县| 托克逊县| 高碑店市| 海安县| 昔阳县| 壤塘县| 长垣县| 玉屏| 元谋县| 繁昌县| 长武县| 瓦房店市| 博湖县| 江西省| 乌拉特前旗| 彰化市| 仪征市| 息烽县| 乌兰察布市| 建阳市| 张家港市| 台山市| 鹤峰县| 阳江市| 鄂州市|