事件结构----基本参数的含义.

2015-08-26 10:12:03来源: eefocus 关键字:事件结构  基本参数
前文提到了事件结构,仔细研究会发现要搞清楚也不是很容易.

labwindows是典型的事件驱动编程方式,它是通过定义回调函数实现的(回调函数是WINDOWS编程的基本方法),WINDOWS可以检测到系统的各类事件,比如画面上一个按钮按下了,如果在DOS时代或者LV6.1以前,是需要用户在程序中轮巡检查的(POLLING MODE),这样,我们的程序实际是两部分,一是要检查发生了什么,而是要决定如果发生了,我们要如何响应.通过事件驱动方式,发生什么的问题已经由操作系统管理了,我们要做的只是如何响应的问题,这样就极大的减轻的我们的工作量.

看看LABWIDNOWS的回调函数的形式,有助于更好地理解事件驱动的方法.

nt CVICALLBACK xxx(int panel, int control, int event,void *callbackData, int eventData1, int eventData2)

int panel------------------系统通知我们哪个面板发生了事件

int control----------------系统通知我们具体哪个控件发生了事件

int event------------------系统通知我们发生的是那一类事件,鼠标,键盘等

void *callbackData---------传递一个复杂的数据结构指针(LV中新增加的回凋函数功能用到了它)

int eventData1,int eventData2---事件发生系统回传的数据,不同的事件有不同的含义,一般对于鼠标操作,代表的是

                 X,Y坐标


我们在看看Labview中的事件结构定义:

前文提到了事件结构,仔细研究会发现要搞清楚也不是很容易.

labwindows是典型的事件驱动编程方式,它是通过定义回调函数实现的(回调函数是WINDOWS编程的基本方法),WINDOWS可以检测到系统的各类事件,比如画面上一个按钮按下了,如果在DOS时代或者LV6.1以前,是需要用户在程序中轮巡检查的(POLLING MODE),这样,我们的程序实际是两部分,一是要检查发生了什么,而是要决定如果发生了,我们要如何响应.通过事件驱动方式,发生什么的问题已经由操作系统管理了,我们要做的只是如何响应的问题,这样就极大的减轻的我们的工作量.

看看LABWIDNOWS的回调函数的形式,有助于更好地理解事件驱动的方法.

nt CVICALLBACK xxx(int panel, int control, int event,void *callbackData, int eventData1, int eventData2)

int panel------------------系统通知我们哪个面板发生了事件

int control----------------系统通知我们具体哪个控件发生了事件

int event------------------系统通知我们发生的是那一类事件,鼠标,键盘等

void *callbackData---------传递一个复杂的数据结构指针(LV中新增加的回凋函数功能用到了它)

int eventData1,int eventData2---事件发生系统回传的数据,不同的事件有不同的含义,一般对于鼠标操作,代表的是

                 X,Y坐标


我们在看看Labview中的事件结构定义:

 

对比之下,可以看出,少了一个PANEL,所以LABVIEW的事件结构是属于一个面板的,那返回PANEL就没有意义了.

多了一个SOURCE和TIME,它们到底是代表什么那?


这是SOURCE定义的内容:LABVIEW把事件共分成四个类别,LABVIEW UI(用户接口界面),Activex,user event 和other

前文提到了USER EVENT,我们大部分响应的是LABVIEW用户接口界面的事件.

TIME代表的时间是什么?经过实验我们可以得出结论:

 
 




GetTickCount()   返回开机以来经过的毫秒数,这就是EVENT STRUCTURE中TIME的含义.

LABVIEW支持的所有事件看下表


关键字:事件结构  基本参数

编辑:什么鱼 引用地址:http://www.eeworld.com.cn/Test_and_measurement/2015/0826/article_12941.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:事件结构-----鼠标消息的次序,消息链的终止和转发
下一篇:事件结构--- 利用UserEvent

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利
推荐阅读
全部
事件结构
基本参数

小广播

独家专题更多

迎接创新的黄金时代 无创想,不奇迹
迎接创新的黄金时代 无创想,不奇迹
​TE工程师帮助将不可能变成可能,通过技术突破,使世界更加清洁、安全和美好。
TTI携TE传感器样片与你相见,一起传感未来
TTI携TE传感器样片与你相见,一起传感未来
TTI携TE传感器样片与你相见,一起传感未来
富士通铁电随机存储器FRAM主题展馆
富士通铁电随机存储器FRAM主题展馆
馆内包含了 纵览FRAM、独立FRAM存储器专区、FRAM内置LSI专区三大部分内容。 
电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2017 EEWORLD.com.cn, Inc. All rights reserved