List列表的選擇條.
package org.wuhua.ui;
import Javax.microedition.lcdui.Graphics;
/**
* <b>類名:Select.Java</b> </br>
* 編寫日期: 2006-8-15 <br/>
* 程序功能描述:選擇條的抽象類.具體子類將實現,可漸變的效果<br/>
* Demo: <br/>
* Bug: <br/>
*
* 程序變更日期 :<br/>
* 變更作者 :<br/>
* 變更說明 :<br/>
*
* @author wuhua </br> <a href="mailto:[email protected]">[email protected]</a>
*/
public abstract class Select {
/*
* 默認選擇框是沒邊框的
*/
protected boolean isBorder = false;
/*
*/
protected int selectColor = 0x676767;
/**
* 繪制邊框
*
* @param x 起始水平線x
* @param y 起始垂直線y
* @param width 邊框的寬度
* @param height 邊框的高度
* @param g 繪制此邊框的圖形
*/
public abstract void paint( int x, int y, int width, int height, Graphics g );
}
package org.wuhua.ui.select;
import Javax.microedition.lcdui.Graphics;
import org.wuhua.ui.Border;
import org.wuhua.ui.Select;
import org.wuhua.ui.border.RoundRectBorder;
/**
* <b>類名:Shade.Java</b> </br>
* 編寫日期: 2006-8-15 <br/>
* 程序功能描述:帶有漸變效果的選擇框,這些選擇框將用在List跟其他的窗口部件上.<br/>
* 以後我們設計的時候,就可以重用這個部件,而不畢業自己寫啊寫.好麻煩的
* Demo: <br/>
* Bug: <br/>
*
* 程序變更日期 :<br/>
* 變更作者 :<br/>
* 變更說明 :<br/>
*
* @author wuhua </br> <a href="mailto:[email protected]">[email protected]</a>
*/
public class ShadeSelect extends Select {
private Border border;
public ShadeSelect(int _selectColor, boolean _isBorder){
//默認的邊框
this(_selectColor,_isBorder,_isBorder?Border.getRectBorder():null);
}
public ShadeSelect(int _selectColor, boolean _isBorder,Border _border){
if(_isBorder && _border == null)
throw new IllegalArgumentException("BoderWidth isn't less than 0 ");
selectColor = _selectColor;
isBorder = _isBorder;
border = _border;
}
public void paint(int x, int y, int width, int height, Graphics g) {
// init(width);
if(isBorder){
paintBorder(x,y,width,height,g);
x = x + border.getBorderWidth();
y = y + border.getBorderWidth();