⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 guicontroller.java

📁 我们提供的VideoIM手机自动拍照上传器J2ME版本[开源]就是这么一种概念: 一个可以下载到手机(例如Nokia7610已经确实可以下载安装并正常运行)的Java应用程序
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
    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 + -