如题:
我需要
1.不通过Timer。(原因:我不可能为了做一个软件而使用Timer这么大的组件来达到事件轮询通知的功能太浪费系统资源了)
2.不通过在自己的程序里的函数检查。(原因:我不可能去使用函数检查,因为这太浪费CPU了,我的软件的主循环每秒需要循环33次以上简单的说,就是几乎所有的代码都要在每一秒内走33遍,所以不允许,有一些,多余的性能损耗)
3.不能使用线程(道理如上,雷同)
3.我需要像系统的如鼠标的move事件一样由系统给我发消息,而非我自己程序通知,系统发送消息到事件处理函数后,我在事件处理函数内实现相应的功能。就这样。
请教
补充:
我就是想要实现:
比如:鼠标的一系列事件,都是由系统触发,right?yes
那么,也就是说从某种意义上来说,系统里面有一个类似timer的东西,或者一个线程之类的东西,在不断地检查事件是否被触发,right?yes
现在,我的要求就是把我的事件触发逻辑验证代码(检查函数),注册到系统的检查机制中去,而不是自己通过循环,或定时器实现。
MythYsJh 说得些道理,但还是不能解决我的问题啊。。。
另外,推荐的答案,不知是谁选的,真够水的。。。
期待高人出现
MythYsJh
if( ProcessCompleted != null )
{
ProcessCompleted(...);
}
这是个逻辑判断的过程,请问这个判断过程的代码,因该放在哪里呢?
C#中MouseMove的使用方法
c#的winform里的MouseMove事件很特殊,当鼠标在一个组件上移动的时候会收到MouseMove事件,但是另一种情况:当在组件上按住左键拖拽移动(组件先收到MouseDown事件)的时候,鼠标在整个窗口内移动时,这个组件都会收到MouseMove事件,而这个组件的MouseUp事件的就收范围也会变为窗口,也就是说,按住左键的情况是特殊的,随后的所...
画连续线条:即利用控件的MouseMove事件,对每次移动进行DrawLine C#
[STAThread] public static void Main(string[] args) { var panel = new MyPanel(); panel.Dock = DockStyle.Fill; DrawLines(panel); var form = new Form(); form.Controls.Add(panel); form.ShowDialog(); } \/\/ 为了方便,直接在一个函数中完成 private...
C#某对象,如按钮,事件中的MouseEnter和MouseMove还有MouseHover什么区别...
MouseEnter 事件响应鼠标(或触笔)移入对象的边界区域 就是鼠标进去按钮区域就会触发.MouseMove 事件响应鼠标指针(或触笔)跨对象内容区域的移动 就是鼠标在按钮的区域内移动就会触发 MouseHover 是当鼠标悬停在控件周围指定区域(“悬停矩形”)上时触发 它的触发时间由MouseHoverTime 属性控制 ...
c# 中给控件添加OnMouseMove事件响应函数不响应的问题
思路应该是没有问题,我这边这样添加是可以进入断点程序的。你是不是应该检查一下你的整体代码。或许你界面布局有问题出现了焦点被夺走的情况,如果这个控件没有焦点,那么也不会激发这个事件。如果你能帖出你全部代码或许可以找到问题在哪里。
怎么用c#实现计算鼠标不动的时间
微软官方提供了C#控制鼠标的代码,然后你加一个定时器,来触发你的事件即可。private void InitializeComponent(){ ...this.MouseMove += new System.Windows.Forms.MouseEventHandler(this.Form1_MouseMove);...} private void Form1_MouseMove(object sender, System.Windows....
c#中Button问题
this.button1.MouseMove += new System.Windows.Forms.MouseEventHandler(this.button1_MouseMove);是指,声明窗体中的button1按钮的MouseMove事件,“+=”就是对事件的订阅,当鼠标移动到button1上的时候将会触发这个事件,然后就会执行button1_MouseMove这个方法(这个方法具体执行什么操作要自己写)。其中...
如何使用C#代码实现对鼠标是否移动的监测
添加mousemove事件,把需要改变的标记放在事件中,这样就可以通过flag来判断鼠标是否移动了。
在C#程序运行时,如何改变无边框窗体大小和托动窗体,并且能处理鼠标事件...
控件是可以显示在里面的,你只要加个label,把label的属性设为visualble=fause就行。设置鼠标经过头像的mouseHover和mouseLeave事件,当mouseHover时label的属性visualble=true,当mouseLeave时label的属性visualble=fause即可。窗体的鼠标事件可以设置控件的cursor属性,里面可以选择许多种鼠标图形。只要是正常的...
C# 鼠标移动到BUTTON上方时,就会弹出一个对话框
把Button的事件添加到MouseMove这个事件上就OK了 例如:private void Button1_MouseMove(object sender, MouseEventArgs e){ MessageBox.Show("你好!");}
c#应用程序怎么做鼠标经过按钮,按钮上出现图片的效果
你给按钮添加事件 MouseMove,private void button1_MouseMove(object sender, MouseEventArgs e) { button1.BackgroundImage = new Bitmap("\/image\/_2.jpg"); }这样,你如果要让图片在鼠标离开后变回来,需要增加MouseLeave 事件,里面把图片改回 ...