📄 guicontroller.java
字号:
public static class EventID{
private EventID(){
}
public static final byte EVENT_EXIT = 0;//退出
public static final byte EVENT_SHOWWEBCAM = 1;//进入webcam界面
public static final byte EVENT_STARTWEBCAM = 2;//webcam界面的"启动"按钮
public static final byte EVENT_STOPWEBCAM = 3;//webcam界面的"停止"按钮
public static final byte EVENT_WEBCAM_BACK = 4;//webcam界面的"返回"按钮
public static final byte EVENT_SETTINGS_SAVE = 5;//设置界面的“保存”按钮
public static final byte EVENT_SETTINGS_BACK = 6;//设置界面的“返回”按钮
public static final byte EVENT_ABOUT = 7;//About界面
public static final byte EVENT_ABOUT_BACK = 8;//About界面的“返回”按钮
public static final byte EVENT_SETTINGS = 9;//进入设置界面
public static final byte EVENT_POSTDATA = 10;//说明当前开始上传数据
public static final byte EVENT_POSTDATAING = 11;//说明当前正在上传数据
public static final byte EVENT_POSTDATA_ERROR = 12;//说明当前正在上传数据时发生了错误
public static final byte EVENT_POSTDATA_SUCC = 13;//说明当前成功上传数据
public static final byte EVENT_CANNOT_SNAPSHOT = 14;//说明当前无法捕获快照
}
/**********************************************************
// GUIController::handleEvent
//
// Description:
// 对传入的事件进行处理
//
// Parameters:
// Return Values:
// Remark:
*
// Author:
// zhengyun@ultrapower 2005.10.07
//
**********************************************************/
public void handleEventNoThrows( int eventID,Object[] args){
try{
handleEvent(eventID, args);
}
catch(Exception exc){}
}
public void handleEvent( int eventID,Object[] args){
System.out.println("Controller::handleEvent eventID>>" + eventID);
switch (eventID)
{
case EventID.EVENT_EXIT:
{
m_bStopPostData = true;
// 清理RMS
RmsFacade.shutdown();
System.gc(); // 通知进行垃圾收集
Thread.yield(); // 本线程暂停一下,使得GC可以马上获得机会运行
m_mobilewebcamMidlet.exit(false);
break;
}
case EventID.EVENT_SHOWWEBCAM:
{
try
{
m_webcamForm.StartCapture();
}
catch(Exception exc)
{
}
setCurrent(m_webcamForm);
break;
}
case EventID.EVENT_SETTINGS:
{
m_settingForm.initSettingsTextFields();
setCurrent(m_settingForm);
break;
}
case EventID.EVENT_STARTWEBCAM:
{
m_bStopPostData = false;
m_webcamForm.StartWebcamSnapshot();
setCurrent(m_webcamForm);
break;
}
case EventID.EVENT_STOPWEBCAM:
{
m_bStopPostData = true;
m_webcamForm.StopWebcamSnapshot();
setCurrent(m_webcamForm);
break;
}
case EventID.EVENT_WEBCAM_BACK:
{
m_bStopPostData = true;
// 必须先保证摄像头已经关闭的,而且不再抓取数据
m_webcamForm.StopWebcamSnapshot();
}
case EventID.EVENT_ABOUT_BACK:
case EventID.EVENT_SETTINGS_BACK:
{
setCurrent(m_listMenu);
break;
}
case EventID.EVENT_SETTINGS_SAVE:
{
/*
* 存储当前设置页面上的所有参数进入RMS
*/
String type = (String)args[0];
String width = (String)args[1];
String height = (String)args[2];
String player = (String)args[3];
String url = (String)args[4];
String timer = (String)args[5];
m_Settings.save(type.toCharArray(),
width,
height,
player,
url,
timer);
setCurrent(m_settingForm);
break;
}
case EventID.EVENT_ABOUT:
{
setCurrent(m_about);
break;
}
case EventID.EVENT_POSTDATA:
{
/*
* 设置FormWebcam界面下方的文字,表明当前传输图像的总字节数:
*/
try{
// 告知用户总字节数目:
String sProgress = String.valueOf(
CommandResources.getChars(CommandResources.TXT_WAITTITLE));
m_webcamForm.setProgress(sProgress
+ m_sPostDataTotalLength, "");
}
catch(Exception exc)
{
setCurrent(
new Alert(
String.valueOf(
CommandResources.getChars(CommandResources.TXT_WAITTITLE)),
exc.getMessage() + "/" + exc.getClass(), null, AlertType.ERROR),
(Displayable)m_webcamForm);
}
break;
}
case EventID.EVENT_POSTDATAING:
{
/*
* 设置FormWebcam界面下方的文字,表明当前传输图像的进度
* 告知用户剩余字节数目
*/
try{
String sProgress = String.valueOf(
CommandResources.getChars(CommandResources.TXT_WAITMESSAGE));
String sProgressTitle = String.valueOf(
CommandResources.getChars(CommandResources.TXT_WAITTITLE));
m_webcamForm.setProgress(sProgressTitle + m_sPostDataTotalLength,
sProgress + m_sPostingDataLength);
}
catch(Exception exc)
{
setCurrent(
new Alert(
String.valueOf(
CommandResources.getChars(CommandResources.TXT_WAITTITLE)),
exc.getMessage() + "/" + exc.getClass(), null, AlertType.ERROR),
(Displayable)m_webcamForm);
}
break;
}
case EventID.EVENT_POSTDATA_ERROR:
{
try{
setCurrent(
new Alert(
String.valueOf(
CommandResources.getChars(CommandResources.TXT_POSTERROR_TITLE)),
String.valueOf(
CommandResources.getChars(CommandResources.TXT_POSTERROR_MSG))
+ m_sRemoteServerResponse, null, AlertType.ERROR),
(Displayable)m_webcamForm);
}
catch(Exception exc)
{
setCurrent(
new Alert(
String.valueOf(
CommandResources.getChars(CommandResources.TXT_WAITTITLE)),
exc.getMessage() + "/" + exc.getClass(), null, AlertType.ERROR),
(Displayable)m_webcamForm);
}
break;
}
case EventID.EVENT_POSTDATA_SUCC:
{
try{
setCurrent(
new Alert(
String.valueOf(
CommandResources.getChars(CommandResources.TXT_POSTSUCC_TITLE)),
String.valueOf(
CommandResources.getChars(CommandResources.TXT_POSTSUCC_MSG))
, null, AlertType.ERROR),
(Displayable)m_webcamForm);
}
catch(Exception exc)
{
setCurrent(
new Alert(
String.valueOf(
CommandResources.getChars(CommandResources.TXT_WAITTITLE)),
exc.getMessage() + "/" + exc.getClass(), null, AlertType.ERROR),
(Displayable)m_webcamForm);
}
break;
}
case EventID.EVENT_CANNOT_SNAPSHOT:
{
/*
* 说明当前无法捕获快照的错误原因
*/
m_webcamForm.StopWebcamSnapshot();
setCurrent(
new Alert(
String.valueOf(
CommandResources.getChars(CommandResources.TXT_CANNOTSNAPSHOT_TITLE)),
String.valueOf(
CommandResources.getChars(CommandResources.TXT_CANNOTSNAPSHOT_MSG))
+ m_sSnapshotException, null, AlertType.ERROR),
(Displayable)m_webcamForm);
break;
}
default:
break;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -