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

📄 fmjsliderui.java

📁 FMJ(freedom media for java)是java视频开发的新选择
💻 JAVA
字号:
package net.sf.fmj.ui.plaf;import java.awt.Color;import java.awt.Dimension;import java.awt.Graphics;import java.awt.Graphics2D;import java.awt.Image;import java.awt.RenderingHints;import java.awt.geom.RoundRectangle2D;import javax.swing.ImageIcon;import javax.swing.JComponent;import javax.swing.JSlider;import javax.swing.SwingConstants;import javax.swing.plaf.ComponentUI;import javax.swing.plaf.basic.BasicSliderUI;import net.sf.fmj.ui.control.FmjSlider;import net.sf.fmj.ui.images.Images;/** * A slider look-and-feel that is nice(ish) *  * @author Warren Bloomer * */public class FmjSliderUI extends BasicSliderUI {	private final ImageIcon vertIcon;	private final ImageIcon horizIcon;	private Dimension vertIconSize = new Dimension(20, 20);	private Dimension horizIconSize  = new Dimension(20, 20);	public static ComponentUI createUI(JComponent component) {		return new FmjSliderUI((JSlider)component);	}		private FmjSliderUI(JSlider component) {		super(component);				horizIcon = Images.get(Images.SLIDER_THUMB_HORIZ);		horizIconSize = new Dimension(horizIcon.getIconWidth(), horizIcon.getIconHeight());				vertIcon = Images.get(Images.SLIDER_THUMB_VERT);		vertIconSize = new Dimension(vertIcon.getIconWidth(), vertIcon.getIconHeight());	}		public void installUI(JComponent c) {		super.installUI(c);	}			public void paintThumb(Graphics g) {//		super.paintThumb(g);				Graphics2D g2d = (Graphics2D) g;				int orientation = slider.getOrientation();				Image image;				switch (orientation) {			case SwingConstants.VERTICAL:				image = vertIcon.getImage();				break;							case SwingConstants.HORIZONTAL:			default:				image = horizIcon.getImage();		}		g2d.drawImage(image, thumbRect.x, thumbRect.y, thumbRect.width, thumbRect.height, null);	}		public void paintTrack(Graphics g) {//		super.paintTrack(g);				Graphics2D g2d = (Graphics2D) g;				g2d.setColor(Color.LIGHT_GRAY);		//		logger.fine("trackLength: " + getTrackLength() + " + trackRect: " + trackRect);//		logger.fine("thumbOverhang: " + getThumbOverhang() + ", trackBuffer: " + trackBuffer);				float x = trackRect.x;		float y = trackRect.y;		float w = trackRect.width;		float h = trackRect.height;				int orientation = slider.getOrientation();		if (orientation == SwingConstants.HORIZONTAL) {			x -= trackBuffer;			w += (2 * trackBuffer) - 1;		}		else {			y -= trackBuffer;			h += (2 * trackBuffer) - 1;		}//		if ()		float arcw = 20;		float arch = 20;		RoundRectangle2D rectangle = new RoundRectangle2D.Float(x, y, w, h, arcw, arch);				g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);				g2d.fill(rectangle);				g2d.setColor(getShadowColor());		if (orientation == SwingConstants.HORIZONTAL) {			rectangle.setFrame(x, y, w-1, h-1);		}		else {			rectangle.setFrame(x, y, w-1, h-1);		}		g2d.draw(rectangle);	}		public void paintFocus(Graphics g) {		if (((FmjSlider)slider).getPaintFocus()) {			super.paintFocus(g);		}	}		protected Dimension getThumbSize() {		int orientation = slider.getOrientation();		if (orientation == SwingConstants.HORIZONTAL) {//			horizThumbIcon = horizIcon;			return horizIconSize;		}		else {//			vertThumbIcon = vertIcon;			return vertIconSize;		}	}}

⌨️ 快捷键说明

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