【发布时间】:2016-12-05 02:45:22
【问题描述】:
我有一个 kiosk machine 应用程序,显示为 always on the top 和 fullscreen。另外,我必须关闭explorer.exe。
因此,如果没有键盘,我将无法访问任何内容。
我正在考虑做手势或无敌按钮,以便我可以打开explorer.exe无需键盘。
我想知道是否有办法检测是否同时点击了两个按钮。我尝试使用以下代码,但它不起作用。
PS:由于我的电脑没有触摸屏,我无法逐行调试。 因此,我无法找出是哪一行导致了问题。
private bool button1WasClicked = false;
private bool button2WasClicked = false;
private void button1_MouseDown(object sender, MouseEventArgs e)
{
button1WasClicked = true;
}
private void button1_MouseUp(object sender, MouseEventArgs e)
{
button1WasClicked = false;
}
private void button2_MouseUp(object sender, MouseEventArgs e)
{
button2WasClicked = false;
}
private void button2_MouseDown(object sender, MouseEventArgs e)
{
if (button1WasClicked == true)
{
Process.Start(Path.Combine(Environment.GetEnvironmentVariable("windir"), "explorer.exe"));
Application.Exit();
button1WasClicked = false;
}
}
【问题讨论】:
-
1.打开/关闭 explorer.exe 是什么意思? 2. 最好试试key Modifiers
-
@LeiYang 如果
explorer.exe关闭,任务栏也会消失。我将不得不在维护期间将其重新打开。我需要键盘才能使用key modifiers。正如我在问题中提到的那样,我将不得不在没有键盘的情况下执行此操作。 -
不可见的按钮如何被点击?
-
又怎么能同时点击两个按钮呢?
-
@Kinetic 我仍然将
visible属性设置为true,但将FlatStyle 设置为flat。将 BorderColor、MouseDownBackColor 和 MouseOverBackColor 设置为 BackColor,以便用户看不到它。如果是触摸屏,可以同时触摸两个按钮。