1 import java.awt.*;
           2 import java.util.HashMap;
           3 import javax.swing.*;
           4 import javax.swing.event.ChangeEvent;
           5 import javax.swing.event.ChangeListener;
           6 
           7 public class TestJSlider
           8 {
           9     public TestJSlider()
          10     {}
          11     public static void main(String args[])
          12     {
          13         //構建一個窗體容器
          14         JFrame frame = new JFrame("test");
          15         frame.setLayout (null);
          16         frame.setSize (400,400);
          17         //構建一個測試容器
          18         TestPanel panel = new TestPanel();
          19         panel.setBounds (100,100,300,300);
          20         frame.add (panel);
          21         //構建一個滾動條
          22         JSlider slider = new JSlider ();
          23         //設置滑塊的標尺距離
          24         slider.setMajorTickSpacing (5);
          25         //設置滑塊自動接近
          26         slider.setSnapToTicks (true);
          27         //設置是否在滑塊上顯示標尺
          28         slider.setPaintTicks(true);
          29         slider.setOrientation (JSlider.HORIZONTAL);
          30         slider.setBounds (0,0,300,100);
          31         frame.add (slider);
          32        
          33         frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
          34         frame.setVisible (true);
          35         //構建一個事件鑒聽
          36         SliderListener listener = new SliderListener(slider,panel);
          37         slider.addChangeListener (listener);
          38     }
          39 }
          40 class SliderListener implements ChangeListener
          41 {
          42     private JSlider slider;
          43     private TestPanel panel;
          44     public SliderListener(JSlider slider,TestPanel panel)
          45     {
          46         super();
          47         this.slider = slider;
          48         this.panel = panel;
          49     }
          50     public void stateChanged(ChangeEvent e)
          51     {
          52         if(e.getSource ()==slider)
          53         {
          54            panel.setHeight (slider.getValue ());
          55            panel.setWidth (slider.getValue ());
          56        
          57         }
          58     }
          59 }
          60 class TestPanel extends JPanel
          61 {
          62     private int w = 100;
          63     private int h = 100;
          64     public TestPanel()
          65     {
          66         super();
          67     }
          68     public void setWidth(int a)
          69     {
          70         this.w = a;
          71         repaint();
          72     }
          73     public void setHeight(int b)
          74     {
          75         this.h = b;
          76         repaint();
          77     }
          78     public void paintComponent(Graphics g)
          79     {
          80         super.paintComponent (g);
          81         g.fillOval (0,0,w,h);
          82     }
          83 }
          84 
          posted on 2007-02-06 16:01 -274°C 閱讀(370) 評論(0)  編輯  收藏 所屬分類: JAVA

          常用鏈接

          留言簿(21)

          隨筆分類(265)

          隨筆檔案(242)

          相冊

          JAVA網站

          關注的Blog

          搜索

          •  

          積分與排名

          • 積分 - 916117
          • 排名 - 40

          最新評論

          主站蜘蛛池模板: 南阳市| 沧州市| 宜兰市| 汝州市| 长沙县| 读书| 大竹县| 友谊县| 迁西县| 武清区| 大城县| 霍州市| 永丰县| 广丰县| 民权县| 东平县| 曲阜市| 海晏县| 磴口县| 东光县| 南京市| 湖南省| 株洲县| 扬中市| 浮山县| 黔东| 彭山县| 昌邑市| 买车| 西平县| 长子县| 都江堰市| 察雅县| 闸北区| 高要市| 绥阳县| 方山县| 宝应县| 阳朔县| 岳阳县| 黔西县|