C# 在C中定义MouseEventHandler#
我正在尝试定义mouseeventhandler,以便每当单击或移动鼠标或按下某个键时,应用程序都将退出。这是我第一次使用C#,但根据我在网上找到的信息,我编写了以下代码:C# 在C中定义MouseEventHandler#,c#,mouse,mouseevent,screensaver,C#,Mouse,Mouseevent,Screensaver,我正在尝试定义mouseeventhandler,以便每当单击或移动鼠标或按下某个键时,应用程序都将退出。这是我第一次使用C#,但根据我在网上找到的信息,我编写了以下代码: MouseDown += new MouseEventHandler(mouseClickedResponse); MouseMove += new MouseEventHandler(mouseMovedResponse); KeyDown += new KeyEventHandler(key
MouseDown += new MouseEventHandler(mouseClickedResponse);
MouseMove += new MouseEventHandler(mouseMovedResponse);
KeyDown += new KeyEventHandler(keyResponse);
它连接到:
private void keyResponse(object sender, EventArgs e)
{
Application.Exit();
}
private void mouseClickedResponse(object sender, EventArgs e)
{
Application.Exit();
}
private void mouseMovedResponse(object sender, EventArgs e)
{
if (firstCall) //Keeps the application from exiting immediately
firstCall = false;
else Application.Exit();
}
我发现的问题是,虽然KeyEventHandler工作得很好,但我可以随意移动和单击鼠标
这是我为允许用户控制而编写的代码的总和;我遗漏了什么吗?表面上看,你的代码看起来一切都很好
一种可能性是,
MouseEventHandler
在System.Windows.Input
()名称空间以及System.Windows.Forms
名称空间()中定义
我相信您想要的是
表单
名称空间中的一个。您是否可能使用了输入
名称空间中的名称空间?从表面上看,您的代码看起来一切都很好
一种可能性是,
MouseEventHandler
在System.Windows.Input
()名称空间以及System.Windows.Forms
名称空间()中定义
我相信您想要的是表单
名称空间中的一个。有没有可能您使用的是输入
名称空间中的那一个?我解决了我的问题--我的表单
中填充了面板
,通过将鼠标输入的代码移到面板上,一切都立即工作。我解决了我的问题--我的表单
中填充了面板
,通过将鼠标输入的代码移到面板上,一切都能立即工作。更改:
private void mouseClickedResponse(object sender, EventArgs e)
致:
现在应该可以正常工作了。更改:
private void mouseClickedResponse(object sender, EventArgs e)
致:
它现在应该可以正常工作了。您使用的是什么控件?也。。。。非常令人讨厌和奇怪的程序行为。只是好奇;这背后的原因是什么。。。“功能”?我正在制作一个屏幕保护程序——我同意这在几乎任何其他情况下都是令人讨厌的,如果我在这种情况下不这么做,那将是令人讨厌的。挂接控件是什么意思?这样做的唯一逻辑原因是表现得像一个屏幕保护程序;你为什么不这么做呢?如果这就是你正在做的,这是一个或几个其他的复制品(在这个网站上搜索带有c标记的
屏幕保护程序)。等等,这是你可以做的吗?怎么用?无论如何,我仍然无法让MouseEventHandler正常工作,我想知道如何操作或将来的参考。请参阅我上一篇评论中的链接,或在本网站上搜索[c#]屏幕保护程序
。您连接到了什么控件?也。。。。非常令人讨厌和奇怪的程序行为。只是好奇;这背后的原因是什么。。。“功能”?我正在制作一个屏幕保护程序——我同意这在几乎任何其他情况下都是令人讨厌的,如果我在这种情况下不这么做,那将是令人讨厌的。挂接控件是什么意思?这样做的唯一逻辑原因是表现得像一个屏幕保护程序;你为什么不这么做呢?如果这就是你正在做的,这是一个或几个其他的复制品(在这个网站上搜索带有c标记的屏幕保护程序)。等等,这是你可以做的吗?怎么用?无论如何,我仍然无法让MouseEventHandler正常工作,我想知道如何操作或将来的参考。请参阅我上一篇评论中的链接,或在本网站上搜索[c#]屏幕保护程序
。不,我不这么认为。我试着看看System.Windows.Input
是否能更好地工作,但它没有识别出来,告诉我缺少一个程序集引用。如果是这样,只需添加一个引用即可。值得一试,尽管如我所说,我希望您已经在引用它,并且切换到表单将修复它。但仍然值得一试。实际上,我在Visual Studio提供给我的可能的系统引用列表中找不到该引用;我能找到的最接近的是System.Windows.Input.Manipulations
。是我找错地方了,还是Visual Studio Express没有.NET的一些功能?System.Windows.Input
是一个WPF命名空间,因此如果不使用WPF,它将不可用。这么说来。。。我被难住了。哦,好吧。谢谢你的帮助。不,我不这么认为。我试着看看System.Windows.Input
是否能更好地工作,但它没有识别出来,告诉我缺少一个程序集引用。如果是这样,只需添加一个引用即可。值得一试,尽管如我所说,我希望您已经在引用它,并且切换到表单将修复它。但仍然值得一试。实际上,我在Visual Studio提供给我的可能的系统引用列表中找不到该引用;我能找到的最接近的是System.Windows.Input.Manipulations
。是我找错地方了,还是Visual Studio Express没有.NET的一些功能?System.Windows.Input
是一个WPF命名空间,因此如果不使用WPF,它将不可用。这么说来。。。我被难住了。哦,好吧。谢谢你的帮助。