当前位置:首页 > 测试测量 > 测试测量
[导读]对于前面板和前面板上的控件,如果鼠标左键点击面板上的一个控件,控件肯定会发生mouse down事件,那么由于控件是位于面板上的,面板是否会发生mouse down事件那?如果发生mouse down事件,那么这个两个事件的先后次序如何

对于前面板和前面板上的控件,如果鼠标左键点击面板上的一个控件,控件肯定会发生mouse down事件,那么由于控件是位于面板上的,面板是否会发生mouse down事件那?如果发生mouse down事件,那么这个两个事件的先后次序如何?根据WINDOWS窗口过程处理来看,任何消息应该是主窗口先得到所有消息,然后派发到它上面的各个控件.LABVIEW是否也是这样处理的那?做个实验看一下.



看得出,面板先产生mouse down 然后图片控件才产生mouse down事件,验证上面的设想.

有的鼠标事件是连续发生的,比如mouse move事件,那mouse down ,mouse up,mouse enter,mouse leave是否是连续发生的事件吗?比如我的鼠标一直按下,那mouse down不断地发生吗?因为连续发生的事件极大地占用了系统资源,所以编程时要尽量避免.

大家看测试程序


测试结果:



可以得出结论:除了mouse move是连续产生事件之外,其它的都不是连续发生了.

下面的问题是:

既然任何针对控件的消息都是通过PANEL接收并转发的,那么我们能否截取这个消息,中断消息的传送或者重定向,比如本来是按钮A产生事件,我们人为地使按钮B产生事件那,我们研究一下.(VC中称为钩子)


仔细看上图,事件有的是有?有的没有,有?的表示该事件可以进行相应处理,来决定消息是否继续或者如何继续.

还是用上面的例子,我们先来添加PANEL的mouse down事件,并禁止它继续传送,那么PICTURE BOX还能产生响应鼠标按下的

事件吗?


从上图可以清楚地看到,当鼠标点击picture box时候,产生的是pane的mouse down?事件,无论是是pane还是上面的控件包括STOP按钮都不再产生mouse down事件,同时,其它的鼠标事件 mouse enter ,mouse leave都不受影响.


红色箭头处,我们给定常量TRUE,表示后面将忽略这个mouse down消息.

这样我们就做到了截取并终止消息的传送.

这个方法有很重要的用途,比如我们在测试或者控制中,禁止操作者用鼠标对画面进行操作,有三种方式

用API函数全面禁止,包括其他程序,隐藏或这发灰需要禁止的按钮(如果多了,就不现实了),而在程序自身禁止是比较合适的.上面的例子就全面禁止了对鼠标按下的响应,解决了这个问题.

能否重定向消息那,右面只有四个可用的选择:

DISARD:TRUE-->中断消息传送,FALSE-->继续.其它三个都是和键有关的,所以没有好的办法.

有一个折中的办法:对于每一个控件都有两个属性value 和value(signal),这两个属性的区别是当给Value(signal)一个值时,将产生value change事件,没有办法直接其它消息的重定向.





本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

共模电流与差模电流的本质区别,在理解共模电感的作用前,需明确两种电流模式的定义:共模电流:指在两条信号线上以相同方向、相同幅度流动的干扰电流。

关键字: 共模电流

电子系统中的噪声有多种形式。无论是从外部来源接收到的,还是在PCB布局的不同区域之间传递,噪声都可以通过两种方法无意中接收:寄生电容和寄生电感。

关键字: 寄生电容

传感器是智能冰箱的“感知器官”,它能够实时监测冰箱内部的温度、湿度和食物状态,确保食物始终处于最佳储存环境。

关键字: 传感器

车规级传感器的电磁兼容性(EMC)成为保障行车安全与系统可靠性的核心指标。CISPR 25标准作为全球汽车行业公认的EMC测试规范,对传感器的辐射发射与抗扰度提出了严苛要求。本文从标准解读、测试方法、工程实践三个维度,系...

关键字: 传感器 EMC测试

在5G通信技术中,大规模多输入多输出(MIMO)技术是提升频谱效率、扩大网络容量和改善用户体验的核心手段。作为大规模MIMO的典型配置,32T32R(32发射天线×32接收天线)阵列通过波束成形技术实现信号的定向传输,结...

关键字: 5G MIMO测试

模拟数据(Analog Data)是由传感器采集得到的连续变化的值,例如温度、压力,以及目前在电话、无线电和电视广播中的声音和图像。

关键字: 模拟数据

电容是电路元件中的一种基本无源器件,其主要功能是储存电能并在电路中起着滤波、耦合、谐振、储能等多种作用。

关键字: 电容 无源器件

近年来,随着电源集成度的提升,多家厂商都推出了PFC和LLC二合一的Combo控制器,将两颗芯片独立实现的功能整合成一颗芯片,简化电源设计。

关键字: 电源集成

电路设计中,耦合方式的选择直接影响信号保真度与系统稳定性。AC耦合与DC耦合看似仅是电容的“有无”之别,实则涉及信号频率、直流偏置、动态范围等多维度的技术权衡。本文将从信号特性出发,解析两种耦合方式的适用场景,为工程师提...

关键字: AC耦合 DC耦合

高速数字电路向56Gbps PAM4、112Gbps NRZ等超高速率演进,电磁兼容性(EMC)问题已从辅助设计环节跃升为决定产品成败的核心要素。传统“设计-测试-整改”的串行模式因周期长、成本高,难以满足AI服务器、8...

关键字: 高速数字电路 EMC
关闭