📄 subwindow.java
字号:
package com.viacube.j2me.component;
import javax.microedition.lcdui.Canvas;
import javax.microedition.lcdui.Graphics;
import mwt.Button;
import mwt.Component;
import mwt.EventListener;
import mwt.Label;
import mwt.Skin;
import mwt.Window;
import com.viacube.j2me.Midlet;
public class SubWindow extends Component implements EventListener {
static final int ACTION_CLOSE = 12;
static final int ACTION_SELECT = 11;
private final Skin[] skins = new Skin[] { defaultSkins[0].clone(), defaultSkins[1].clone() };
private final static Skin[] defaultSkins = { new Skin(new int[] { 0xFFFFFF, 0, 0, 0xC6C6C6, 0xC6C6C6 }),
new Skin(new int[] { 0xFFFFFF, 0xC6C6C6, 0xC6C6C6, 0xC6C6C6 }) };
public Skin getSkin(int style) {
return skins[style];
}
public void setSkin(int style, Skin skin) {
skins[style] = skin;
}
public SubWindow(int x, int y, int width, int height, boolean iscontainer) {
super(x, y, width, height, true);
Button.setDefaultSkin(Button.STYLE_DEFAULT, new Skin(new int[] { 0xB0C4DE, 0xeeeeee }));
Button.setDefaultSkin(Button.STYLE_FOCUSED, new Skin(new int[] { 0xB0C4DE, 0xFFC125 }));
Button.setDefaultSkin(Button.STYLE_PRESSED, new Skin(new int[] { 0xB0C4DE, 0xFFC125 }));
Button.setDefaultSkin(Button.STYLE_DISABLED, new Skin(new int[] { 0xB0C4DE, 0xeeeeee }));
this.setSkin(0, new Skin(new int[] { 0x121212, 0xeeeeee }));
this.setDoubleBuffered(false);
this.setEnabled(false);
}
protected void paint(Graphics g, Window window) {
getSkin(0).paint(this, g);
paintChilds(g, window);
}
public void processEvent(int eventType, Component c, Object[] args) {
switch ( eventType) {
case EVENT_ACTION: // when a button is pressed an event action is triggered
switch ( ((Button) c).getActionType()) {
case ACTION_SELECT:
final Window dialog = new Window(MainWindow.mw.width / 2 - 30, MainWindow.mw.height / 2 - 30,
60, 60) {
public int getFocusAction(long key) {
switch ( Midlet.canvas.getGameAction((int) key)) {
case Canvas.FIRE:
return FOCUSACTION_FIRE;
default:
return FOCUSACTION_NONE;
}
}
};
dialog.add(new Label(5, 12, 45, 20, "Click Me!"));
dialog.add(new Button(10, 35, 40, 20, "Close", this, ACTION_CLOSE));
dialog.setSkin(Window.STYLE_DEFAULT, new Skin(new int[] { 0xeeeeee, 0xB2C4DF }));
dialog.setFocusFirst();
MainWindow.mw.win.dialogOpen(dialog);
break;
case ACTION_CLOSE:
MainWindow.mw.win.dialogClose();
break;
}
break;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -