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

📄 metalsliderui.java

📁 Mobile 应用程序使用 Java Micro Edition (Java ME) 平台
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
		    fillLeft = !slider.isEnabled() ? trackLeft : trackLeft + 1;		    fillRight = middleOfThumb;		}		else {		    fillLeft = middleOfThumb;		    fillRight = !slider.isEnabled() ? trackRight - 1 : trackRight - 2;		}	    }	    else {	        middleOfThumb = thumbRect.y + (thumbRect.height / 2);		middleOfThumb -= trackRect.y; // To compensate for the g.translate()		fillLeft = !slider.isEnabled() ? trackLeft : trackLeft + 1;		fillRight = !slider.isEnabled() ? trackRight - 1 : trackRight - 2;				if ( !drawInverted() ) {		    fillTop = middleOfThumb;		    fillBottom = !slider.isEnabled() ? trackBottom - 1 : trackBottom - 2;		}		else {		    fillTop = !slider.isEnabled() ? trackTop : trackTop + 1;		    fillBottom = middleOfThumb;		}	    }	    	    if ( slider.isEnabled() ) {	        g.setColor( slider.getBackground() );		g.drawLine( fillLeft, fillTop, fillRight, fillTop );		g.drawLine( fillLeft, fillTop, fillLeft, fillBottom );		g.setColor( MetalLookAndFeel.getControlShadow() );		g.fillRect( fillLeft + 1, fillTop + 1,			    fillRight - fillLeft, fillBottom - fillTop );	    }	    else {	        g.setColor( MetalLookAndFeel.getControlShadow() );		g.fillRect( fillLeft, fillTop,			    fillRight - fillLeft, trackBottom - trackTop );	    }	}        g.translate( -trackRect.x, -trackRect.y );    }    private void oceanPaintTrack(Graphics g)  {	boolean leftToRight = MetalUtils.isLeftToRight(slider);        boolean drawInverted = drawInverted();        Color sliderAltTrackColor = (Color)UIManager.get(                                    "Slider.altTrackColor");        // Translate to the origin of the painting rectangle        Rectangle paintRect = getPaintTrackRect();        g.translate(paintRect.x, paintRect.y);        // Width and height of the painting rectangle.        int w = paintRect.width;        int h = paintRect.height;        if (!slider.isEnabled()) {            g.setColor(MetalLookAndFeel.getControlShadow());            g.drawRect(0, 0, w - 1, h - 1);        }	else if (slider.getOrientation() == JSlider.HORIZONTAL) {            int middleOfThumb = thumbRect.x + (thumbRect.width / 2) -                                paintRect.x;            int fillMinX;            int fillMaxX;            if (middleOfThumb > 0) {                g.setColor(chooseColor(drawInverted,                           MetalLookAndFeel.getPrimaryControlDarkShadow(),                           MetalLookAndFeel.getControlDarkShadow()));               g.drawRect(0, 0, middleOfThumb - 1, h - 1);            }            if (middleOfThumb < w) {                g.setColor(chooseColor(drawInverted,                           MetalLookAndFeel.getControlDarkShadow(),                           MetalLookAndFeel.getPrimaryControlDarkShadow()));                g.drawRect(middleOfThumb, 0, w - middleOfThumb - 1, h - 1);            }            g.setColor(MetalLookAndFeel.getPrimaryControlShadow());            if (drawInverted) {                fillMinX = middleOfThumb;                fillMaxX = w - 2;                g.drawLine(1, 1, middleOfThumb, 1);            }            else {                fillMinX = 1;                fillMaxX = middleOfThumb;                g.drawLine(middleOfThumb, 1, w - 1, 1);            }            if (h == 6) {                g.setColor(MetalLookAndFeel.getWhite());                g.drawLine(fillMinX, 1, fillMaxX, 1);                g.setColor(sliderAltTrackColor);                g.drawLine(fillMinX, 2, fillMaxX, 2);                g.setColor(MetalLookAndFeel.getControlShadow());                g.drawLine(fillMinX, 3, fillMaxX, 3);                g.setColor(MetalLookAndFeel.getPrimaryControlShadow());                g.drawLine(fillMinX, 4, fillMaxX, 4);            }        }        else {            int middleOfThumb = thumbRect.y + (thumbRect.height / 2) -                                paintRect.y;            int fillMinY;            int fillMaxY;            if (middleOfThumb > 0) {                g.setColor(chooseColor(drawInverted,                           MetalLookAndFeel.getControlDarkShadow(),                           MetalLookAndFeel.getPrimaryControlDarkShadow()));                g.drawRect(0, 0, w - 1, middleOfThumb - 1);            }            if (middleOfThumb < h) {                g.setColor(chooseColor(drawInverted,                           MetalLookAndFeel.getPrimaryControlDarkShadow(),                           MetalLookAndFeel.getControlDarkShadow()));                g.drawRect(0, middleOfThumb, w - 1, h - middleOfThumb - 1);            }            g.setColor(MetalLookAndFeel.getPrimaryControlShadow());            if (drawInverted()) {                fillMinY = 1;                fillMaxY = middleOfThumb;                if (leftToRight) {                    g.drawLine(1, middleOfThumb, 1, h - 1);                }                else {                    g.drawLine(w - 2, middleOfThumb, w - 2, h - 1);                }            }            else {                fillMinY = middleOfThumb;                fillMaxY = h - 2;                if (leftToRight) {                    g.drawLine(1, 1, 1, middleOfThumb);                }                else {                    g.drawLine(w - 2, 1, w - 2, middleOfThumb);                }            }            if (w == 6) {                g.setColor(chooseColor(!leftToRight,                           MetalLookAndFeel.getWhite(),                           MetalLookAndFeel.getPrimaryControlShadow()));                g.drawLine(1, fillMinY, 1, fillMaxY);                g.setColor(chooseColor(!leftToRight, sliderAltTrackColor,                           MetalLookAndFeel.getControlShadow()));                g.drawLine(2, fillMinY, 2, fillMaxY);                g.setColor(chooseColor(!leftToRight,                           MetalLookAndFeel.getControlShadow(),                           sliderAltTrackColor));                g.drawLine(3, fillMinY, 3, fillMaxY);                g.setColor(chooseColor(!leftToRight,                           MetalLookAndFeel.getPrimaryControlShadow(),                           MetalLookAndFeel.getWhite()));                g.drawLine(4, fillMinY, 4, fillMaxY);            }        }        g.translate(-paintRect.x, -paintRect.y);    }    public void paintFocus(Graphics g)  {            }    protected Dimension getThumbSize() {        Dimension size = new Dimension();        if ( slider.getOrientation() == JSlider.VERTICAL ) {            size.width = getVertThumbIcon().getIconWidth();            size.height = getVertThumbIcon().getIconHeight();	}	else {            size.width = getHorizThumbIcon().getIconWidth();            size.height = getHorizThumbIcon().getIconHeight();	}	return size;    }    /**     * Gets the height of the tick area for horizontal sliders and the width of the     * tick area for vertical sliders.  BasicSliderUI uses the returned value to     * determine the tick area rectangle.     */    public int getTickLength() {        return slider.getOrientation() == JSlider.HORIZONTAL ? tickLength + TICK_BUFFER + 1 :        tickLength + TICK_BUFFER + 3;    }    /**     * Returns the shorter dimension of the track.     */    protected int getTrackWidth() {        // This strange calculation is here to keep the        // track in proportion to the thumb.        final double kIdealTrackWidth = 7.0;	final double kIdealThumbHeight = 16.0;        final double kWidthScalar = kIdealTrackWidth / kIdealThumbHeight;        if ( slider.getOrientation() == JSlider.HORIZONTAL ) {	    return (int)(kWidthScalar * thumbRect.height);	}	else {	    return (int)(kWidthScalar * thumbRect.width);	}    }    /**     * Returns the longer dimension of the slide bar.  (The slide bar is only the     * part that runs directly under the thumb)     */    protected int getTrackLength() {           if ( slider.getOrientation() == JSlider.HORIZONTAL ) {            return trackRect.width;         }        return trackRect.height;    }    /**     * Returns the amount that the thumb goes past the slide bar.     */    protected int getThumbOverhang() {        return (int)(getThumbSize().getHeight()-getTrackWidth())/2;    }    protected void scrollDueToClickInTrack( int dir ) {        scrollByUnit( dir );    }    protected void paintMinorTickForHorizSlider( Graphics g, Rectangle tickBounds, int x ) {        g.setColor( slider.isEnabled() ? slider.getForeground() : MetalLookAndFeel.getControlShadow() );        g.drawLine( x, TICK_BUFFER, x, TICK_BUFFER + (tickLength / 2) );    }    protected void paintMajorTickForHorizSlider( Graphics g, Rectangle tickBounds, int x ) {        g.setColor( slider.isEnabled() ? slider.getForeground() : MetalLookAndFeel.getControlShadow() );        g.drawLine( x, TICK_BUFFER , x, TICK_BUFFER + (tickLength - 1) );    }    protected void paintMinorTickForVertSlider( Graphics g, Rectangle tickBounds, int y ) {        g.setColor( slider.isEnabled() ? slider.getForeground() : MetalLookAndFeel.getControlShadow() );	if (MetalUtils.isLeftToRight(slider)) {	    g.drawLine( TICK_BUFFER, y, TICK_BUFFER + (tickLength / 2), y );	}	else {	    g.drawLine( 0, y, tickLength/2, y );	}    }    protected void paintMajorTickForVertSlider( Graphics g, Rectangle tickBounds, int y ) {        g.setColor( slider.isEnabled() ? slider.getForeground() : MetalLookAndFeel.getControlShadow() );	if (MetalUtils.isLeftToRight(slider)) {	    g.drawLine( TICK_BUFFER, y, TICK_BUFFER + tickLength, y );	}	else {	    g.drawLine( 0, y, tickLength, y );	}    }}

⌨️ 快捷键说明

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