我有一個按鈕,它將sendkeys傳遞給焦點的文本框。在這種情況下,它是Textedit1使用ActiveControl或使用任何方法獲取最後一個活動控件,並使用SendKeys控件獲取最後一個活動控件
'get current focused form.
AppActivate(Process.GetCurrentProcess.Id)
'set current focused textbox
TextEdit1.Focus() '<- is it possible to change this so that it gets the *LAST* selected control, then focus?
'the character to be passed
SendKeys.Send("B")
不過,我有我的窗體上的很多文本框,這將是不切實際的代碼放在對我的形式每個TextBox控件引發LostFocus。
我的計劃是讓最後集中在我的形式控制這是最後控制用戶點擊點擊此按鈕,將焦點設置到它,然後SendKeys.Send它,因此,無論用戶之前點擊一個控件,我可以傳遞SendKeys給它。
你如何獲得最後一個集中控制?是否可以用ActiveControl
?
編輯 我想提出一個軟件,可用於觸摸顯示器,並且要求是,我有一個屏幕上的鍵盤僅專用於軟件。我不能使用OSK。
如果您有對TextEdit控件的引用,爲什麼需要調用SendKeys?如果您向我們提供關於您的應用程序總體目標的更多信息,我們可能會提出一些有益的建議 – FloatingKiwi
添加了原因,並解釋了問題的要求。 –