📄 nimrodscrollbarui.java
字号:
/* * (C) Copyright 2005 Nilo J. Gonzalez * * This library is free software; you can redistribute it and/or modify it under * the terms of the GNU Lesser Gereral Public Licence as published by the Free * Software Foundation; either version 2 of the Licence, or (at your opinion) any * later version. * * This library is distributed in the hope that it will be usefull, but WITHOUT ANY * WARRANTY; without even the implied warranty of merchantability or fitness for a * particular purpose. See the GNU Lesser General Public Licence for more details. * * You should have received a copy of the GNU Lesser General Public Licence along * with this library; if not, write to the Free Software Foundation, Inc., 59 * Temple Place, Suite 330, Boston, Ma 02111-1307 USA. * * http://www.gnu.org/licenses/lgpl.html (English) * http://gugs.sindominio.net/gnu-gpl/lgpl-es.html (Espa駉l) * * * Original author: Nilo J. Gonz醠ez */ /** * Esta clase implementa las barras de scroll. * @author Nilo J. Gonzalez */ package com.nilo.plaf.nimrod;import java.awt.*;import javax.swing.*;import javax.swing.plaf.*;import javax.swing.plaf.metal.*;public class NimRODScrollBarUI extends MetalScrollBarUI { public static ComponentUI createUI( JComponent c) { return new NimRODScrollBarUI(); } protected JButton createDecreaseButton( int orientation) { decreaseButton = new NimRODScrollButton( orientation, scrollBarWidth, isFreeStanding); return decreaseButton; } protected JButton createIncreaseButton( int orientation) { increaseButton = new NimRODScrollButton( orientation, scrollBarWidth, isFreeStanding); return increaseButton; } protected void paintThumb( Graphics g, JComponent c, Rectangle thumbBounds) { Color thumbColor = UIManager.getColor( "ScrollBar.thumb"); Color thumbShadow = UIManager.getColor( "ScrollBar.thumbShadow"); //Color thumbHighlightColor = UIManager.getColor( "ScrollBar.thumbHighlight"); g.translate( thumbBounds.x, thumbBounds.y); g.setColor( thumbColor); g.fillRect( 0, 0, thumbBounds.width - 1, thumbBounds.height - 1 ); g.setColor( thumbShadow ); g.drawRect( 0, 0, thumbBounds.width - 1, thumbBounds.height - 1 ); Icon icono = null; if ( scrollbar.getOrientation() == JScrollBar.HORIZONTAL ) { icono = UIManager.getIcon( "ScrollBar.horizontalThumbIconImage"); } else { icono = UIManager.getIcon( "ScrollBar.verticalThumbIconImage"); } int w = icono.getIconWidth(); int h = icono.getIconHeight(); int x = (thumbBounds.width - w ) / 2; int y = (thumbBounds.height -h ) / 2; if ( ((scrollbar.getOrientation() == JScrollBar.HORIZONTAL) && (thumbBounds.width >= w)) || ((scrollbar.getOrientation() == JScrollBar.VERTICAL) && (thumbBounds.height >= h)) ) { icono.paintIcon( c, g, x, y); } g.translate( -thumbBounds.x, -thumbBounds.y); Graphics2D g2D = (Graphics2D)g; GradientPaint grad = null; if ( scrollbar.getOrientation() == JScrollBar.HORIZONTAL ) { grad = new GradientPaint( thumbBounds.x,thumbBounds.y, NimRODUtils.brillo, thumbBounds.x,thumbBounds.height, NimRODUtils.sombra); } else { grad = new GradientPaint( thumbBounds.x,thumbBounds.y, NimRODUtils.brillo, thumbBounds.width, thumbBounds.y, NimRODUtils.sombra); } g2D.setPaint( grad); g2D.fill( thumbBounds); } protected void paintTrack( Graphics g, JComponent c, Rectangle trackBounds) { super.paintTrack( g, c, trackBounds); Graphics2D g2D = (Graphics2D)g; GradientPaint grad = null; if ( scrollbar.getOrientation() == JScrollBar.HORIZONTAL ) { grad = new GradientPaint( trackBounds.x,trackBounds.y, NimRODUtils.sombra, trackBounds.x,trackBounds.y + trackBounds.height, NimRODUtils.brillo); } else { grad = new GradientPaint( trackBounds.x,trackBounds.y, NimRODUtils.sombra, trackBounds.x + trackBounds.width, trackBounds.y, NimRODUtils.brillo); } g2D.setPaint( grad); g2D.fill( trackBounds); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -