有沒有辦法讓標準的Windows Forms應用程序檢測在應用程序啓動時是否按住Shift鍵 - 而不使用Windows掛鉤?在C#/ Windows窗體中檢測應用程序啓動時的Shift鍵
理想情況下,如果在EXE文件運行時按住Shift鍵,工作流程將從正常狀態改變。
有沒有辦法讓標準的Windows Forms應用程序檢測在應用程序啓動時是否按住Shift鍵 - 而不使用Windows掛鉤?在C#/ Windows窗體中檢測應用程序啓動時的Shift鍵
理想情況下,如果在EXE文件運行時按住Shift鍵,工作流程將從正常狀態改變。
Here is an article關於直接讀取關鍵狀態(和鼠標)。
檢查Control.ModifierKeys ...
[STAThread]
static void Main(string[] args)
{
if (Control.ModifierKeys == Keys.ShiftKey)
{
// Do something special
}
}
的ModifierKeys屬性看起來理想:
private void Form1_Load(object sender, EventArgs e)
{
if ((ModifierKeys & Keys.Shift) != 0)
{
MessageBox.Show("Shift is pressed");
}
}
我知道這個帖子是相當老了,但我遇到了這個問題,並通過修改固定它傑米代碼:
[STAThread]
static void Main(string[] args)
{
if (Control.ModifierKeys.ToString() == "Shift")
{
// Do something special
}
}
任何關心解釋他們爲什麼低估了我的答案? – 2009-06-09 11:46:54