gradientcolorcanvas.java

来自「example2 众多JAVA实例源码...学习java基础的好帮手」· Java 代码 · 共 41 行

JAVA
41
字号
package opusmicro.demos.gradientcolor;

import javax.microedition.lcdui.Canvas;
import javax.microedition.lcdui.Graphics;

public class GradientColorCanvas extends Canvas {

	public GradientColorCanvas() {

	}

	int color = 0x7FFFD4;
	protected void paint(Graphics g) {
		drawGradientColor(g,1,10,260,240,color);
	}

	public void drawGradientColor(Graphics g, int x, int y, int width, int height, int color){
		int[] rgb = getGradientColor(color,width);
		for(int dy=y; dy<height*4; dy+=4){
			int tempH = height*4-(dy-y);
			tempH = tempH>4?4:tempH;
			g.drawRGB(rgb, 0, width, x, dy, width, tempH, true);
		}
	}
	private int[] getGradientColor(int color, int width) {
		int[] rgb;
		int shadeWidth = width;
		rgb = new int[shadeWidth * 4];
		int apha = -127;
		for ( int i = 0 ; i < shadeWidth ; i++) {
			apha = -127+i;
			int col = color | (128 - apha << 24);
			rgb[i] = col;
			rgb[i + shadeWidth] = col;
			rgb[i + shadeWidth * 2] = col;
			rgb[i + shadeWidth * 3] = col;
		}
		return rgb;
	}
}

⌨️ 快捷键说明

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