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

📄 yoyosliderui.java

📁 java+eclipse做的TTPlayer
💻 JAVA
字号:
/* * To change this template, choose Tools | Templates * and open the template in the editor. */package com.hadeslee.yoyoplayer.util;import java.awt.Color;import java.awt.Dimension;import java.awt.Graphics;import java.awt.Image;import javax.swing.JSlider;import javax.swing.plaf.basic.BasicSliderUI;/** * * @author hadeslee */public class YOYOSliderUI extends BasicSliderUI {    private Image thumbImage = null;//普通按的图片    private Image thumbOverImage;//鼠标在上面的图片    private Image thumbPressedImage = null;//按下面的图片    private Image backgroundImage = null;//普通背景图片    private Image activeBackImage;//激活的背景图片    private JSlider parentSlider = null;    private Dimension thumbDim = null;    private int newThumbHeight = -1;    private int thumbXOffset = 0;    private int thumbYOffset = 0;    private boolean hideThumb = false;    public YOYOSliderUI(JSlider slider) {        super(slider);        parentSlider = slider;    }    public void setThumbImage(Image img) {        thumbImage = img;        thumbDim = new Dimension(thumbImage.getWidth(null), thumbImage.getHeight(null));    }    public void setThumbPressedImage(Image img) {        thumbPressedImage = img;    }    public void setActiveBackImage(Image activeBackImage) {        this.activeBackImage = activeBackImage;    }    public void setThumbOverImage(Image thumbOverImage) {        this.thumbOverImage = thumbOverImage;    }    protected Dimension getThumbSize() {        return thumbDim;    }    public void forceThumbHeight(int h) {        newThumbHeight = h;    }    public void setThumbXOffset(int x) {        thumbXOffset = x;    }    public void setThumbYOffset(int y) {        thumbYOffset = y;    }    public void setHideThumb(boolean hide) {        hideThumb = hide;    }    public void setBackgroundImages(Image img) {        backgroundImage = img;    }    public void paintFocus(Graphics g) {    }    public void paintThumb(Graphics g) {        if (hideThumb == true) {            return;        }        Image img = thumbImage;        if (img != null) {            if (thumbPressedImage != null) {                if (parentSlider.getValueIsAdjusting()) {                    img = thumbPressedImage;                }            }            if (newThumbHeight >= 0) {                if (parentSlider.getOrientation() == JSlider.HORIZONTAL) {                    g.drawImage(img, thumbRect.x + thumbXOffset, (parentSlider.getHeight() - img.getHeight(slider)) / 2, img.getWidth(null), newThumbHeight, null);                } else {                    g.drawImage(img, (parentSlider.getWidth() - img.getWidth(slider)) / 2, thumbRect.y + thumbYOffset, img.getWidth(null), newThumbHeight, null);                }            } else {                if (parentSlider.getOrientation() == JSlider.HORIZONTAL) {                    g.drawImage(img, thumbRect.x + thumbXOffset, (parentSlider.getHeight() - img.getHeight(slider)) / 2, img.getWidth(null), img.getHeight(null), null);                } else {                    g.drawImage(img, (parentSlider.getWidth() - img.getWidth(slider)) / 2, thumbRect.y + thumbYOffset, img.getWidth(null), img.getHeight(null), null);                }            }        }    }    public void paintTrack(Graphics g) {        int width = parentSlider.getWidth();        int height = parentSlider.getHeight();        int all = parentSlider.getMaximum() - parentSlider.getMinimum();        int value = parentSlider.getValue();        if (backgroundImage != null) {            if (parentSlider.getOrientation() == JSlider.HORIZONTAL) {                g.drawImage(backgroundImage, 0, (height - backgroundImage.getHeight(slider)) / 2, parentSlider);            } else {                g.drawImage(backgroundImage, (width - backgroundImage.getWidth(parentSlider)) / 2, 0, parentSlider);            }        }        if (activeBackImage != null) {            if (parentSlider.getOrientation() == JSlider.HORIZONTAL) {                g.drawImage(activeBackImage, 0, (height - activeBackImage.getHeight(slider)) / 2, width * value / all, activeBackImage.getHeight(slider), 0, 0, width * value / all, activeBackImage.getHeight(slider), slider);            } else {                int sx = (width - activeBackImage.getWidth(parentSlider)) / 2;                g.drawImage(activeBackImage, sx, height - (height * value / all), sx + activeBackImage.getWidth(slider), height, 0, height - (height * value / all), activeBackImage.getWidth(slider), height, slider);            }        }    }    public void setThumbLocation(int x, int y) {        super.setThumbLocation(x, y);        parentSlider.repaint();    }}

⌨️ 快捷键说明

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