📄 oyoahasliderui.java
字号:
//fillTop = !slider.isEnabled() ? trackTop : trackTop + 1; //fillBottom = !slider.isEnabled() ? trackBottom - 1 : trackBottom - 2;fillTop = trackTop+1;fillBottom = trackBottom-1; if (!drawInverted()) { //fillLeft = !slider.isEnabled() ? trackLeft : trackLeft + 1;fillLeft = trackLeft+1; fillRight = middleOfThumb; } else { fillLeft = middleOfThumb;//fillRight = !slider.isEnabled() ? trackRight - 1 : trackRight - 2;fillRight = trackRight-1; } } else { middleOfThumb = thumbRect.y + (thumbRect.height / 2); middleOfThumb -= trackRect.y; //fillLeft = !slider.isEnabled() ? trackLeft : trackLeft + 1; //fillRight = !slider.isEnabled() ? trackRight - 1 : trackRight - 2;fillLeft = trackLeft+1;fillRight = trackRight-1; if (!drawInverted()) { fillTop = middleOfThumb; //fillBottom = !slider.isEnabled() ? trackBottom - 1 : trackBottom - 2;fillBottom = trackBottom-1; } else { //fillTop = !slider.isEnabled() ? trackTop : trackTop + 1;fillTop = trackTop+1; fillBottom = middleOfThumb; } } if(slider.isEnabled()) { //g.setColor(slider.getBackground());//g.setColor(Color.blue);//g.drawLine(fillLeft, fillTop, fillRight, fillTop);//g.drawLine(fillLeft, fillTop, fillLeft, fillBottom);//OyoahaUtilities.setAlphaChannel(g,slider,0.5f);Color tcolor = slider.getBackground();if(tcolor instanceof UIResource)g.setColor(OyoahaUtilities.getColor(OyoahaUtilities.SELECTED_ENABLED));elseg.setColor(tcolor);g.fillRect(fillLeft, fillTop, fillRight-fillLeft, fillBottom-fillTop);g.setColor(scheme.getWhite());g.drawLine(fillLeft, fillTop, fillRight, fillTop);g.drawLine(fillLeft, fillTop, fillLeft, fillBottom);g.setColor(scheme.getBlack());g.drawLine(fillLeft, fillBottom, fillRight, fillBottom);//OyoahaUtilities.setAlphaChannel(g,slider,1.0f);//GradientPaint gp; //gp = new GradientPaint(0, fillBottom, new Color(0,0,0,0), 0, fillBottom-3, new Color(0,0,0,100), false);//((Graphics2D)g).setPaint(gp);//g.fillRect(fillLeft, fillBottom-3, fillRight-fillLeft, 3);//gp = new GradientPaint(trackLeft, 0, new Color(0,0,0,100), trackLeft+3, 0, new Color(0,0,0,0), false);//((Graphics2D)g).setPaint(gp);//g.fillRect(trackLeft, trackTop, 3, trackBottom-trackTop); } else { g.setColor(OyoahaUtilities.getColor(OyoahaUtilities.UNSELECTED_DISABLED)); g.fillRect(fillLeft, fillTop, fillRight - fillLeft, trackBottom - trackTop); } } g.translate(-trackRect.x, -trackRect.y); } /*public void paintLabels(Graphics g) { Rectangle labelBounds = labelRect; java.util.Dictionary dictionary = (java.util.Dictionary)slider.getLabelTable(); if (dictionary != null) { java.util.Enumeration keys = dictionary.keys(); while (keys.hasMoreElements()) { Integer key = (Integer)keys.nextElement(); Component label = (Component)dictionary.get(key); label.setEnabled(slider.isEnabled()); if (slider.getOrientation() == JSlider.HORIZONTAL) { g.translate( 0, labelBounds.y ); paintHorizontalLabel(g, key.intValue(), label); g.translate( 0, -labelBounds.y ); } else { int offset = 0; if(!OyoahaUtilities.isLeftToRight(slider)) { offset = labelBounds.width - label.getPreferredSize().width; } g.translate( labelBounds.x + offset, 0 ); paintVerticalLabel( g, key.intValue(), label); g.translate( -labelBounds.x - offset, 0 ); } } } }*/ protected void paintHorizontalLabel(Graphics g, int value, Component label) { label.setEnabled(slider.isEnabled()); super.paintHorizontalLabel(g, value, label); } protected void paintVerticalLabel(Graphics g, int value, Component label) { label.setEnabled(slider.isEnabled()); super.paintVerticalLabel(g, value, label); } public void paintTicks(Graphics g) { Rectangle tickBounds = tickRect; int i; int maj, min, max; int w = tickBounds.width; int h = tickBounds.height; int centerEffect, tickHeight; //g.setColor(OyoahaUtilities.getColorFromScheme(OyoahaUtilities.BLACK)); g.setColor(slider.isEnabled() ? OyoahaUtilities.getColorFromScheme(OyoahaUtilities.BLACK) : OyoahaUtilities.getColorFromScheme(OyoahaUtilities.GRAY)); maj = slider.getMajorTickSpacing(); min = slider.getMinorTickSpacing(); if ( slider.getOrientation() == JSlider.HORIZONTAL ) { g.translate( 0, tickBounds.y); int value = slider.getMinimum(); int xPos = 0; if ( slider.getMinorTickSpacing() > 0 ) { while ( value <= slider.getMaximum() ) { xPos = xPositionForValue( value ); paintMinorTickForHorizSlider( g, tickBounds, xPos ); value += slider.getMinorTickSpacing(); } } if ( slider.getMajorTickSpacing() > 0 ) { value = slider.getMinimum(); while ( value <= slider.getMaximum() ) { xPos = xPositionForValue( value ); paintMajorTickForHorizSlider( g, tickBounds, xPos ); value += slider.getMajorTickSpacing(); } } g.translate( 0, -tickBounds.y); } else { g.translate(tickBounds.x, 0); int value = slider.getMinimum(); int yPos = 0; if ( slider.getMinorTickSpacing() > 0 ) { int offset = 0; if(!OyoahaUtilities.isLeftToRight(slider)) { offset = tickBounds.width - tickBounds.width / 2; g.translate(offset, 0); } while ( value <= slider.getMaximum() ) { yPos = yPositionForValue( value ); paintMinorTickForVertSlider( g, tickBounds, yPos ); value += slider.getMinorTickSpacing(); } if(!OyoahaUtilities.isLeftToRight(slider)) { g.translate(-offset, 0); } } if ( slider.getMajorTickSpacing() > 0 ) { value = slider.getMinimum(); if(!OyoahaUtilities.isLeftToRight(slider)) { g.translate(2, 0); } while ( value <= slider.getMaximum() ) { yPos = yPositionForValue( value ); paintMajorTickForVertSlider( g, tickBounds, yPos ); value += slider.getMajorTickSpacing(); } if(!OyoahaUtilities.isLeftToRight(slider)) { g.translate(-2, 0); } } g.translate(-tickBounds.x, 0); } } protected void paintMinorTickForHorizSlider( Graphics g, Rectangle tickBounds, int x ) { g.setColor(slider.isEnabled() ? OyoahaUtilities.getColorFromScheme(OyoahaUtilities.BLACK) : OyoahaUtilities.getColorFromScheme(OyoahaUtilities.GRAY)); g.drawLine(x, TICK_BUFFER, x, TICK_BUFFER + (tickLength / 2)); } protected void paintMajorTickForHorizSlider( Graphics g, Rectangle tickBounds, int x ) { g.setColor(slider.isEnabled() ? OyoahaUtilities.getColorFromScheme(OyoahaUtilities.BLACK) : OyoahaUtilities.getColorFromScheme(OyoahaUtilities.GRAY)); g.drawLine( x, TICK_BUFFER , x, TICK_BUFFER + (tickLength - 1) ); } protected void paintMinorTickForVertSlider( Graphics g, Rectangle tickBounds, int y ) { g.setColor(slider.isEnabled() ? OyoahaUtilities.getColorFromScheme(OyoahaUtilities.BLACK) : OyoahaUtilities.getColorFromScheme(OyoahaUtilities.GRAY)); if (OyoahaUtilities.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() ? OyoahaUtilities.getColorFromScheme(OyoahaUtilities.BLACK) : OyoahaUtilities.getColorFromScheme(OyoahaUtilities.GRAY)); if (OyoahaUtilities.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 + -