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

📄 tpconfig.c

📁 基于嵌入式图形库microwindows的简单示例程序10例
💻 C
字号:
/******************************************************************Microwindows 触摸屏校验程序 By zhang kaohua 2003.12.18**************************************************************************/#define MWINCLUDECOLORS#include<stdio.h>#include <fcntl.h>#include <errno.h>#include <unistd.h>#include "device.h"#include"nano-X.h"#include "touchscreen_s3c44b0_ads7843.h"static GR_WINDOW_ID w;    //声明根窗口static GR_GC_ID gc;         //声明根窗口绘图上下文GR_EVENT event;           //声明事件GR_FONT_ID font;          //设置字体号void do_press(GR_EVENT_BUTTON  *event);//static int PD_Open( );struct tpmark {  int ltx;  int lty;  int rbx;  int rby; }tpMark;struct ts_event tpevent;//extern struct ts_event event1;static int rx,ry;//任意点坐标static int lt_x,lt_y;//左上角static int rb_x,rb_y;//右下角static char sure;FILE  *tpmap;//存放校验坐标static int pd_fd = -1;extern SCREENDEVICE scrdev;//  string text;int main(int ac,char **av){/*  struct ts_event tpevent;  int rx,ry;//任意点坐标  int lt_x,lt_y;//左上角  int rb_x,rb_y;//右下角  FILE  *tpmap;//存放校验坐标  string text;  char sure;*/  rx=0;ry=0;  lt_x=1719;lt_y=480;  rb_x=314; rb_y=3666;  //tpmark tpMark;  sure='n';   if (GrOpen()<0)    {     printf("Can't open graphics\n");     exit(1);    }     w=GrNewWindow(GR_ROOT_WINDOW_ID,0,0,320,240,3,GREEN,BLUE);//实例化根窗口    gc=GrNewGC();//实例化上下文    GrMapWindow(w);//显示窗口   // draw_main_win(w,gc);    GrSelectEvents(w,GR_EVENT_MASK_EXPOSURE |        GR_EVENT_MASK_BUTTON_DOWN);    GrText(w,gc,60,20,"Please press any point on touchpad!",-1,GR_TFASCII);    //PD_Open( );   for(;;)    {      GrGetNextEvent(&event);      switch(event.type)//pevent.pressure>50)        {         case GR_EVENT_TYPE_BUTTON_DOWN:         do_press(&event.button);         break;	}     }      GrClose();   return 0;}void do_press(GR_EVENT_BUTTON *event){//调用触摸屏事件  if(event->wid==w)   {    for(;;)      {         if(rx+ry==0)           {	    rx=event1.x;            ry=event1.y;            GrText(w,gc,80,40,"rx=:"+rx,-1,GR_TFASCII);            GrText(w,gc,160,40,"ry=:"+ry,-1,GR_TFASCII);           }         else if(rx+ry>0)           {             if(lt_x+lt_y==0)              {   	       lt_x=event1.x;               lt_y=event1.y;               GrText(w,gc,80,80,"lt_x=:",-1,GR_TFASCII);               GrText(w,gc,160,80,"lt_y=:",-1,GR_TFASCII);              }             else               {	       rb_x=event1.x;               rb_y=event1.y;               GrText(w,gc,80,100,"rb_x=:",-1,GR_TFASCII);               GrText(w,gc,160,100,"rb_y=:",-1,GR_TFASCII);               break;	      }               }         }    }     GrText(w,gc,80,120,"Are you sure?(input y/n in minicom)",-1,GR_TFASCII);     scanf("%c",&sure);     if((sure=='y')||(sure=='Y'))        {   	  if((tpmap=fopen("./tpconfigure","wb+"))==NULL)                   {              printf("can't open the config file!\n");              return;//exit(0);            }          tpMark.ltx=lt_x;	  tpMark.lty=lt_y;	  tpMark.rbx=lt_x;	  tpMark.rby=lt_y;          if(fwrite(&tpMark,sizeof(int),4,tpmap)!=4)            printf("file write error!\n");         }     return;   }/*static int PD_Open( ){	       	if((pd_fd = open(TS_DEVICE_FILE, O_NONBLOCK)) < 0) {		EPRINTF("Error %d opening %s touchscreen device [%s]\n", 			errno, TS_DEVICE, TS_DEVICE_FILE);		return -1;	}	GdHideCursor(&scrdev);  	return pd_fd;}*/

⌨️ 快捷键说明

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