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

📄 touchmanage.c

📁 在ARM7处理器S3C444B0X上的脉搏测量仪程序
💻 C
字号:
/************************************************************
         TouchManage.c 负责处理屏幕点击事件的分配处理。
*********************************************************************/
#include "option.h"
#include "def.h"
#include "44b.h"
#include "44blib.h"


#include "GUI.H"
#include "DIALOG.H"
#include "WM.h"

#include "define.h"
//--------------------------------------
extern int status;//
extern const GUI_BITMAP bmMainInterface;//主界面位图
extern struct ConfigData configData;//配置
extern struct Knowledge  showKnowledge;
extern struct Usage usage;
extern int working;//标志是否在工作
//-----------------------------------

//====================================================================
void TouchManage(int x,int y)
{
  if(status==0)//由欢迎界面进入主界面
   if(x>50&&x<120&&y>180&&y<210)
   {
    status=1;//标志主界面
    GUI_Clear();
    GUI_DrawBitmap(&bmMainInterface,0,0);//显示主界面 
	}
   //-----------------------------------------------------------------
  if(status==1)// 由主界面进入XXXX界面
  {
    if(x>50&&x<100&&y>10&&y<40)// 由主界面进入"脉搏测量 "界面
    {
     status=11;//标志进入"脉搏测量"界面
     MeasureHandler();
    }
    if(x>50&&x<100&&y>50&&y<80)// 由主界面进入"脉搏测量常识浏览 "界面
    {
    status=12;//标志进入"脉搏测量常识浏览 "界面
    KnowledgeHandler();
    }
    if(x>50&&x<100&&y>90&&y<120)// 由主界面进入"脉搏测量设置 "界面
    {
	 status=13;//标志进入"脉搏测量设置"界面
	 ConfigHander(&configData);
    }
    if(x>50&&x<100&&y>130&&y<160)// 由主界面进入"使用说明 "界面
    {
     status=14;//标志进入"使用说明 "界面
     UsageHandler();
    }
   }
   //-----------------------------------------------------------------
   if(status==11)//脉搏测量界面处理
   { if(x>0&&x<160&&y>220&&y<240)//由"脉搏测量 "界面返回主界面
     {
      status=1;//标志主界面
      GUI_Clear();
      GUI_DrawBitmap(&bmMainInterface,0,0);//显示主界面 
	 }
	 if(x>10&&x<70&&y>100&&y<120)//开始测量
     {
      GUI_GotoXY(50,20);
      working=1;
      //MeasureHandler();
	 }
	 if(x>90&&x<150&&y>100&&y<120)//停止测量
     {
      GUI_GotoXY(50,60);
      working=0;
      //GUI_DispString("脉搏测量停止");
	 }
   }
   //-----------------------------------------------------------------
   if(status==12)//脉搏测量常识浏览
   {
     if(x>0&&x<160&&y>220&&y<240)//由"脉搏测量 "界面返回主界面
     {
      status=1;//标志主界面
      GUI_Clear();
      GUI_DrawBitmap(&bmMainInterface,0,0);//显示主界面 
	 }
     if(x>140&&x<160&&y>20&&y<105)
     {
       showKnowledge.startLine-=6;
       showKnowledge.endLine-=6;
       if(showKnowledge.startLine<0)
       {
         showKnowledge.startLine=0;
         showKnowledge.endLine=11;
        }
       KnowledgeHandler();
      }
     if(x>140&&x<160&&y>105&&y<215)
     {
      showKnowledge.startLine+=6;
       showKnowledge.endLine+=6;
       if(showKnowledge.endLine>96)
       {
         showKnowledge.startLine=86;
         showKnowledge.endLine=97;
        }
        KnowledgeHandler();
      }
    }
   //-----------------------------------------------------------------
   if(status==13)// 脉搏测量仪配置处理
   {
     if(x>0&&x<160&&y>220&&y<240)//由"脉搏测量配置 "界面返回主界面
     {
      status=1;//标志主界面
      GUI_Clear();
      GUI_DrawBitmap(&bmMainInterface,0,0);//显示主界面 
	 }
	 if(x>15&&x<35&&y>45&&y<60)//时间减
	 {
	    configData.minutes--;
	    if(configData.minutes==0)
	       configData.minutes=1;
	    ConfigHander(&configData);   
	  }
	  if(x>125&&x<145&&y>45&&y<60)//时间加
	  {
	    configData.minutes++;
	    if(configData.minutes>7)
	       configData.minutes=7;
	    ConfigHander(&configData);   
	   }
	   if(x>115&&x<135&&y>65&&y<80)//健康提示
	   {
	    configData.prompt=!configData.prompt;
	    ConfigHander(&configData);   
	   }
	   if(x>42&&x<58&&y>92&&y<108)//正常
	   {
	    configData.exerciseOrNormal=1;
	    ConfigHander(&configData);   
	   }
	   if(x>122&&x<138&&y>92&&y<108)//运动
	   {
	    configData.exerciseOrNormal=0;
	    ConfigHander(&configData);   
	   }
	   if(x>42&&x<586&&y>132&&y<148)//男
	   {
	    configData.sex=1;
	    ConfigHander(&configData);   
	   }
	   if(x>122&&x<138&&y>132&&y<148)//女
	   {
	    configData.sex=0;
	    ConfigHander(&configData);   
	   }
	   if(x>42&&x<58&&y>172&&y<188)//儿童
	   {
	    configData.ageLevel=1;
	    ConfigHander(&configData);   
	   }
	   if(x>42&&x<58&&y>197&&y<213)//成年
	   {
	    configData.ageLevel=2;
	    ConfigHander(&configData);   
	   }
	   if(x>122&&x<138&&y>197&&y<213)//老年
	   {
	    configData.ageLevel=3;
	    ConfigHander(&configData);   
	   }
	  }
	   //-------------------------------------
	   if(status==14)//测量仪使用说明界面
	   {
	     if(x>0&&x<160&&y>220&&y<240)//由"脉搏测量使用说明 "界面返回主界面
         {
           status=1;//标志主界面
           GUI_Clear();
           GUI_DrawBitmap(&bmMainInterface,0,0);//显示主界面 
         }
         if(x>140&&x<160&&y>20&&y<105)
         {
          usage.startLine-=6;
          usage.endLine-=6;
          if(usage.startLine<0)
           {
            usage.startLine=0;
            usage.endLine=11;
           }
          UsageHandler();
         }
        if(x>140&&x<160&&y>105&&y<215)
        {
         usage.startLine+=6;
         usage.endLine+=6;
         if(usage.endLine>29)
         {
           usage.startLine=18;
           usage.endLine=29;
         }
         UsageHandler();
        }
	   }
}
//========================================================================

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -