[.NET] 關於Focus的使用問題?
想請問,我的程式現在大致來說
Form1使用Timer在監控剪貼簿Clipbrd是否有資料,若有資料
的話呼叫出Form2並且在Form2檢測按下哪個號碼(數字鍵1~4),
把Clipbrd的資料貼到Form1對應的TextBox(1~4)。
而目前碰到的問題點在於:
當我是在操作Form1使Clipbrd產生資料(ex:在Form1的TextBox
自己輸入資料後再按Ctrl+C),則會跳出Form2後可以直接按下
1~4的按鍵,就可以把資料順利貼到Form1的TextBox內。
但是如果我是在其他部分,例如網頁上複製文字使Clipbrd產生
資料,因為我有對Form2下達Focus的命令,所以Form2有跳出來
並且顯示在最上面。但是按下1~4卻無法執行貼上資料到Form1的
動作。一定要自己滑鼠先點一下Form2後,按下1~4才會貼資料到
Form1去。
而且我又嘗試一種模式,例如我在檔案總管內修改資料夾的名
稱時,我按下Ctrl+C複製後,Form2跳出來了,但是我當下如果
按下1~4,則會直接輸入在修改資料夾名稱的地方,而不是如我
所希望的,Form2跳出來後,我所輸入的1~4是拿來判斷要貼到
Form1哪個TextBox的工作。
想請問各位前輩知道這是哪個部分沒有控制到嘛?感覺好像是
用了Focus只是把畫面呼叫出來,但實際上Window的游標還是在
我滑鼠原本停留的位置。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.37.88.56
推
04/16 04:31, , 1F
04/16 04:31, 1F
我不知道是不是我想的太複雜多了,還是這是vb2010才有的功能,
當我使用Form2.Focus()時,順便加上一行Form2.Activate()就可
以達到我的需求了。
也感謝E大讓我有個方向去找答案。
※ 編輯: sdwufei 來自: 114.43.98.167 (04/17 01:11)