📄 checkelement.java
字号:
package inline.ui.le;
import javax.microedition.lcdui.*;
import inline.ui.ce.CanvasElement;
public class CheckElement extends StringElement
{
public static final int TYPE_2 = 1;
public static final int TYPE_3 = 2;
protected int state;
protected boolean selected;
protected boolean marked;
protected int type;
public CheckElement(String txt, int ttype)
{
super(txt);
state = 0;
selected = false;
marked = false;
type = ttype;
}
public boolean ownerDraw()
{
return true;
}
public void onDraw(Graphics g, inline.ui.ce.InList lst, int x, int y, int asc )
{
int fh = lst.getFontHeight();
int d1 = (fh >> 2);
int d2 = (fh >> 1);
boolean sel = (asc>=0);
g.setColor(lst.getRampColor(90, sel));
g.drawRect(x+d1,y+d1, d2, d2);
g.setColor(lst.getRampColor(70, sel));
if (state == 1)
{
g.fillRect(x+d1+1,y+d1+1, d2-1, d2-1);
}
else if (state == 2)
{
g.fillRect(x+d1+1,y+d1+1, d1, d2-1);
}
if (selected)
{
g.drawRect(x+d1-2,y+d1-2, d2+4, d2+4);
}
if (marked)
{
g.setColor(lst.getRampColor(100, sel));
g.fillTriangle(x+d2-2, y+1, x+fh-3, y+1, x+fh-3, y+d2);
g.setColor(lst.getRampColor(0, sel));
g.drawLine(x+d2-3, y+1, x+fh-3, y+d2+1);
}
g.setColor(lst.getRampColor(100, sel));
CanvasElement.paintStringASC(lst, g, text, x+fh, y, 0, fh, asc);
}
public boolean onSelect()
{
state++;
if (state>type) state = 0;
return true;
}
public void setState(int sstate)
{
state = sstate;
}
public int getState()
{
return state;
}
public void setSelected(boolean ssel)
{
selected = ssel;
}
public boolean getSelected()
{
return selected;
}
public void setMarked(boolean mmarked)
{
marked = mmarked;
}
public boolean isMarked()
{
return marked;
}
public void invertMarked()
{
marked = !marked;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -