📄 uicontrol.java
字号:
package vitular.msnclient;
import javax.microedition.lcdui.*;
import vitular.ui.MsgCanvas;
import vitular.ui.MsgCtrlBase;
import vitular.ui.ImgMenu;
import javax.microedition.media.Player;
/**
* <p>Title: msn客户端</p>
* <p>Description: 应用程序</p>
* <p>Copyright: Copyright (c) 2004</p>
* <p>Company: 维度动力</p>
* @author JJ
* @version 1.0
*/
public class UIControl extends MsgCanvas{
ImgMenu msnMenu, /*loginMenu,*/ textMenu, imgMenu;
private static final String SPLASH_NAME = "/res/splash.png";
private static final String VERSION_STR = "版本:v1.0.1";
//public final int STATUS_LOGIN_MENU = STATUS_USER + 1;
public final int STATUS_IMG_MENU = STATUS_USER + 2;
public final int STATUS_TEXT_MENU = STATUS_USER + 3;
private Image flash_menu_img; //闪烁信息的img
private Player msgPlayer;//播放声音
private boolean bSoundOn;//是否播放声音
public UIControl() {
super(SPLASH_NAME, VERSION_STR, null); //无背景音乐
// System.out.println("UIControl()");
}
//初始化数据
public void initProgramData(){
loadImg();
initMenu();
//初始化声音
bSoundOn = true;
msgPlayer = createPlayer("/img/msg.wav");
}
public void CtrlAction(Object obj, int evt, int value, String ValueName) {
//UIControl内部只处理闪屏结束的事件,其他的都交给midlet处理
msnMIDlet.instance.handleCtrlAction(obj, evt, value, ValueName);
}
//按键事件监听函数
public void keyPressedEvent(int code){
// System.out.println("KeyPressed");
msnMIDlet.instance.handlekeyPressedEvent(code);
}
public void keyReleasedEvent(int code){
}
//刷新
public void update(){
//System.out.println("update");
switch(appStatus){
// case STATUS_LOGIN_MENU:
// loginMenu.update(getPaintG());
// break;
case STATUS_IMG_MENU:
imgMenu.update(getPaintG());
break;
case STATUS_TEXT_MENU:
textMenu.update(getPaintG());
break;
}
}
/**
* 初始化图片
*/
private void loadImg(){
try {
flash_menu_img = Image.createImage("/res/flashmenu.png");
}catch(Exception e){
System.out.println(e.toString());
}
}
/**
* 初始化菜单
*/
private void initMenu(){
imgMenu = new ImgMenu(this, true);
//loginMenu = new ImgMenu(this, false);
textMenu = new ImgMenu(this, false);
textMenu.setHasReturn(true);
imgMenu.setListener(this);
//loginMenu.setListener(this);
textMenu.setListener(this);
// loginMenu.setFlashImg(flash_menu_img);
}
/**
* 重新设置菜单的信息
* @param strList String[] 蔡单项的名字
* @param flashList boolean[] 菜单项是否闪烁
*/
public void resetTextMenu(String[] strList, boolean[] flashList){
textMenu.removeAllItem();
for (int i = 0; i < strList.length; i++){
textMenu.addItem(strList[i]);
textMenu.flashMenuItem(i, flashList[i]);
}
}
/**
* 重新赋予一个textMenu
* @param menu ImgMenu
*/
public void resetTextMenu(ImgMenu menu){
textMenu = null;
textMenu = menu;
textMenu.setListener(this);
textMenu.setHasReturn(true);
textMenu.setSoundOn(bSoundOn);
}
/**
* 获得textMenu
* @return ImgMenu
*/
public ImgMenu getTextMenu(){
return textMenu;
}
/**
* 重新赋予一个imgMenu
* @param menu ImgMenu
*/
public void resetImgMenu(ImgMenu menu){
imgMenu = null;
imgMenu = menu;
imgMenu.setListener(this);
imgMenu.setHasReturn(true);
imgMenu.setSoundOn(bSoundOn);
}
/**
* 获得imgMenu
* @return ImgMenu
*/
public ImgMenu getImgMenu(){
return imgMenu;
}
/**
* 播放动画
* @param str String
*/
public void playFlash(String str){
this.playFlash(SPLASH_NAME, null, str);
}
/**
* 播放声音
*/
public void playSound() {
if (msgPlayer != null && bSoundOn) {
try {
if (msgPlayer.getState() == 0) {
msgPlayer.stop();
}
msgPlayer.start();
}
catch (Exception e) {
System.out.println(e.toString());
}
}
}
/**
* 设置声音开关
* @param on boolean
*/
public void setSoundOn(boolean on){
bSoundOn = on;
imgMenu.setSoundOn(on);
textMenu.setSoundOn(on);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -