normalimage.java

来自「手机程序」· Java 代码 · 共 84 行

JAVA
84
字号
package com.gameislive.browser.element;

import javax.microedition.lcdui.Image;
import javax.microedition.lcdui.Graphics;
import com.gameislive.browser.Browser;

/**
 * 图片元素
 * 
 * @author pan
 *
 */
public class NormalImage extends Element{

	Image img;
	
	/**
	 * 图片没有加载完毕时,代替显示的文字
	 */
	String alt;
	
	Browser browser;
	
	String src;
	
	public NormalImage(boolean canSelect,int hyperlinksId,int lineId,Browser browser){
		super(canSelect,hyperlinksId,lineId,NORMAL_IMAGE);
		this.browser = browser;
	}
	
	public int getWidth(){
		if(alt!=null){
			return browser.strWidth(alt);
		}else{
			return width;
		}
	}
	
	public int getHeight(){
		if(alt!=null){
			return browser.fontHeight;
		}else{
			return height;
		}
	}
	
	/**
	 * 加载图片(可能网络原因,图片加载需要一些时间,在图片没有加载完成时,显示其它内容)
	 * @param img
	 */
	public void setImage(Image img){
		this.img = img;
		alt = null;
		width = img.getWidth();
		height = img.getHeight();
	}
	
	public void setAlt(String str){
		this.alt = str;
	}
	
	public void setSrc(String src){
		this.src = src;
	}
	
	public String getSrc(){
		return src;
	}
	
	public void draw(int y,int hyperlinks,Graphics g){
		
		if(alt!=null){
			g.drawString(alt, x, y, Graphics.TOP|Graphics.LEFT);
		}else{
			if(canSelect && hyperlinksId == hyperlinks){
				g.setColor(0x0000ff);
				g.fillRect(x-1, y-1, width+2, height+2);
			}
			g.drawImage(img,x,y,Graphics.TOP|Graphics.LEFT);
		}
	}
	
}

⌨️ 快捷键说明

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