编程论坛's Archiver

beyondabcd 发表于 2007-10-16 17:19

谁能过PC104+触摸屏

<P>我写的一个C语言程序,有个毛病,不是经常发生,只是有时候,但我怎么能也能不好。当我在按钮1(区域)单击一下后,<BR>又去单击按钮2后,触摸屏上的鼠标确在按钮1(区域)上单击一下,然后在跑到按钮2的位置上,但它取没执行单击。<BR>这是怎么回事,我贴出来一个例子让大家看看。你们谁有大型程序中的控制鼠标的例子贴上来看看。<BR><BR>#include &lt;stdlib.h&gt; <BR>#include &lt;stdio.h&gt; </P>
<P>#include "dos.h"<BR>#include&lt;graphics.h&gt;<BR>#include "mymouse.c"<BR>sub6()<BR>    {<BR>         int MouseX,MouseY;<BR>         int sum1;<BR>         int per1;<BR>         int sign=4;<BR>         int sub6wait=1;      /*循环开关*/</P>
<P>         MouseSetY(0,479);   /*鼠标设置区域一定要写,否则在触摸屏上鼠标能显示的区域是不对的*/<BR>         MouseSetX(0,639);<BR>         MouseOn(MouseX,MouseY);<BR>         MouseMath();<BR>    while(sub6wait==1)<BR>        {<BR>            if(MouseStatus()==2)<BR>                {<BR>                   MouseX=MouseGetX();<BR>                   MouseY=MouseGetY();<BR>                 }<BR>/*****************************************    按钮1  *********************************************/<BR>            if((LeftPress()==1)&amp;&amp;((60&lt;MouseX &amp;&amp; MouseX&lt;180)&amp;&amp;(37&lt; MouseY&amp;&amp; 78&gt; MouseY  )))   /*按1*/<BR>                {<BR>                    MouseOff();<BR>                    show_bmp("sub6\\pre_1.bmp",60,37);<BR>                    MouseX=MouseGetX();<BR>                    MouseY=MouseGetY();<BR>                    MouseOn(MouseX,MouseY);<BR>                    while(LeftPress()==1);</P>
<P>                    if(LeftPress()==0)<BR>                        {<BR>                            MouseOff();<BR>                            show_bmp("sub6\\1.bmp",60,37);<BR>                            MouseX=MouseGetX();<BR>                            MouseY=MouseGetY();<BR>                            MouseOn(MouseX,MouseY);<BR>                        }<BR>                 }<BR>/*****************************************     按钮2  *********************************************/<BR>            if((LeftPress()==1)&amp;&amp;((60&lt;MouseX &amp;&amp; MouseX&lt;180)&amp;&amp;(94&lt; MouseY&amp;&amp; 134&gt; MouseY  )))   /*按2*/<BR>                {<BR>                    MouseOff();<BR>                    show_bmp("sub6\\pre_2.bmp",60,94);<BR>                    MouseX=MouseGetX();<BR>                    MouseY=MouseGetY();<BR>                    MouseOn(MouseX,MouseY);<BR>                    while(LeftPress()==1);</P>
<P>                    if(LeftPress()==0)<BR>                        {<BR>                            MouseOff();<BR>                            show_bmp("sub6\\2.bmp",60,94);<BR>                            MouseX=MouseGetX();<BR>                            MouseY=MouseGetY();<BR>                            MouseOn(MouseX,MouseY);<BR>                        }<BR>                  }</P>
<P> /*****************************************    按钮3(退出) *********************************************/<BR>            if((LeftPress()==1)&amp;&amp;((60&lt;MouseX &amp;&amp; MouseX&lt;180)&amp;&amp;(430&lt; MouseY&amp;&amp; 471&gt; MouseY  )))   /*按3*/<BR>                {<BR>                    MouseOff();<BR>                    show_bmp("sub6\\pre_8.bmp",60,430);<BR>                    MouseX=MouseGetX();<BR>                    MouseY=MouseGetY();<BR>                    MouseOn(MouseX,MouseY);<BR>                    while(LeftPress()==1);</P>
<P>                    if(LeftPress()==0)<BR>                        {<BR>                            MouseOff();<BR>                            show_bmp("sub6\\8.bmp",60,430);<BR>                            MouseX=MouseGetX();<BR>                            MouseY=MouseGetY();<BR>                            MouseOn(MouseX,MouseY);<BR>                        }<BR>                      sub6wait=0;<BR>                }<BR>         } /*  while  */<BR>  } /*  sub2  */<BR></P>[attach]29104[/attach]<BR>

RockCarry 发表于 2007-10-16 17:59

晕,都不知道你用的什么平台

eakcon 发表于 2007-11-14 10:06

太有味了<BR>

青格儿 发表于 2007-11-24 11:31

楼主,你的程序用什么运行,有什么要求?
我用TC运行,它报错啊!

yflovehj 发表于 2007-11-25 20:08

太难了,我是新手呀,你拿这难的程序是不是想打击我的自信心哟!!![em05]

页: [1]

Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.