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

📄 colortoolbar.java

📁 一个用JAVA编写的模拟WINDOWS画图工具中的调色版类
💻 JAVA
字号:

// colorToolbar.java

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class ColorToolBar extends JToolBar {
    private Color leftColor;
    private Color rightColor;
    private Color colors[]; 
    
	public ColorToolBar() {
		super( "颜色", JToolBar.VERTICAL );
		colors =  new Color[ InitColors.COUNTER ]; 
		colors = InitColors.creatInitColors();
		leftColor = Color.BLACK;
		rightColor = Color.WHITE;
		this.addMouseListener(
				new MouseAdapter() {
					public void mouseClicked( MouseEvent event ) {
						for( int i = 0; i < colors.length / 2; i++ ) {
							if ( event.getX() > 52 + i * 16 && event.getX() < 62 + i * 16
									&& event.getY() > 20 && event.getY() < 32 ) {
								if ( event.isMetaDown() )
									rightColor = colors[ i ];
								else
								    leftColor = colors[ i ];
							    break;
							}				
						}
						for( int i = 0; i < colors.length; i++ ) {
							if ( event.getX() > 52 + i * 16 && event.getX() < 62 + i * 16
									&& event.getY() > 36 && event.getY() < 48 ) {
								if ( event.isMetaDown() )
									rightColor = colors[ i + colors.length / 2 ];
								else
									leftColor = colors[ i + colors.length / 2 ];
								break;
							}
						}
						repaint();
					}
				});
	}
	
	public void paint( Graphics g ) {
		super.paint( g );
		
		g.setColor( Color.BLACK );
		g.draw3DRect( 20, 20, 28, 28, false );
		g.setColor( Color.WHITE );
		g.fillRect( 21, 21, 28, 28 );
		g.setColor( Color.GRAY );
		g.draw3DRect( 31, 31, 12, 12, true );
		g.setColor( rightColor );
		g.fillRect( 30, 30, 12, 12 );
		g.setColor( Color.GRAY );
		g.draw3DRect( 25, 25, 12, 12, true );
		g.setColor( leftColor );
		g.fillRect( 24, 24, 12, 12 );
		
		for ( int i = 0; i < colors.length / 2; i++ ) {
			g.setColor( Color.BLACK );
			g.draw3DRect( 52 + i * 16, 20, 12, 12, false );
			g.setColor( colors[ i ] );
			g.fillRect( 53 + i * 16, 21, 12, 12 );
		}
		
		for ( int i = 0; i < colors.length / 2; i++ ) {
			g.setColor( Color.BLACK );
			g.draw3DRect( 52 + i * 16, 36, 12, 12, false );
			g.setColor( colors[ i + colors.length / 2 ] );
			g.fillRect( 53 + i * 16, 37, 12, 12 );
		}
		
	}
	
}

⌨️ 快捷键说明

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