⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 motifmthumbsliderui.java

📁 Swing Examples Sources Codes 里包含了Java Web开发的一些实例代码
💻 JAVA
字号:
/* (swing1.1.1) */package jp.gr.java_conf.tame.swing.slider;import java.awt.*;import javax.swing.*;import javax.swing.event.*;import javax.swing.plaf.*;import com.sun.java.swing.plaf.motif.*;/** * @version 1.0 09/08/99 */public class MotifMThumbSliderUI extends MotifSliderUI                implements MThumbSliderAdditional {  MThumbSliderAdditionalUI additonalUi;  MouseInputAdapter mThumbTrackListener;      public static ComponentUI createUI(JComponent c)    {    return new MotifMThumbSliderUI((JSlider)c);  }    public MotifMThumbSliderUI()   {    super(null);  }    public MotifMThumbSliderUI(JSlider b)   {    super(b);  }    public void installUI(JComponent c)   {    additonalUi = new MThumbSliderAdditionalUI(this);    additonalUi.installUI(c);    mThumbTrackListener = createMThumbTrackListener((JSlider) c);    super.installUI(c);  }    public void uninstallUI(JComponent c) {    super.uninstallUI(c);    additonalUi.uninstallUI(c);    additonalUi = null;    mThumbTrackListener = null;  }    protected MouseInputAdapter createMThumbTrackListener( JSlider slider ) {    return additonalUi.trackListener;  }      protected TrackListener createTrackListener( JSlider slider ) {    return null;  }    protected ChangeListener createChangeListener( JSlider slider ) {    return additonalUi.changeHandler;  }  protected void installListeners( JSlider slider ) {    slider.addMouseListener(mThumbTrackListener);    slider.addMouseMotionListener(mThumbTrackListener);    slider.addFocusListener(focusListener);    slider.addComponentListener(componentListener);    slider.addPropertyChangeListener( propertyChangeListener );    slider.getModel().addChangeListener(changeListener);  }  protected void uninstallListeners( JSlider slider ) {    slider.removeMouseListener(mThumbTrackListener);    slider.removeMouseMotionListener(mThumbTrackListener);    slider.removeFocusListener(focusListener);    slider.removeComponentListener(componentListener);    slider.removePropertyChangeListener( propertyChangeListener );    slider.getModel().removeChangeListener(changeListener);  }  protected void calculateGeometry() {    super.calculateGeometry();    additonalUi.calculateThumbsSize();    additonalUi.calculateThumbsLocation();  }      protected void calculateThumbLocation() {}              Rectangle zeroRect = new Rectangle();    public void paint( Graphics g, JComponent c ) {        Rectangle clip = g.getClipBounds();    thumbRect = zeroRect;        super.paint( g, c );        int thumbNum = additonalUi.getThumbNum();    Rectangle[] thumbRects = additonalUi.getThumbRects();        for (int i=thumbNum-1; 0<=i; i--) {      if ( clip.intersects( thumbRects[i] ) ) {        thumbRect = thumbRects[i];        paintThumb( g );              }    }          }    protected void installKeyboardActions( JSlider slider ) {}  protected void uninstallKeyboardActions( JSlider slider ) {}  public void scrollByBlock(int direction)    {}  public void scrollByUnit(int direction) {}  //  // MThumbSliderAdditional  //  public Rectangle getTrackRect() {    return trackRect;  }    public Dimension getThumbSize() {    return super.getThumbSize();  }    public int xPositionForValue(int value) {    return super.xPositionForValue( value);  }    public int yPositionForValue(int value) {    return super.yPositionForValue( value);  }    }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -