夜下月:
InvokeIfRequired() 這是自己寫的擴充方法,是用來處理 控制項(controller) 執行續(thread)問題的
所以在程式碼中的this.InvokeIfRequired(()=> ProcessKeyDown());
this 指的是Form1這個元件,去呼叫InvokeIfRequired這個擴充方法
後面那段是委派delegate 或者可以想程funcPointer函式指標
而為什麼ProcessKeyDown()要使用這樣的機制去處理,因為Keyboard.IsKeyDown()
這個方法使用的執行續與this不同,如果不使用委派機制,就會發生錯誤
可以試著把this.InvokeIfRequired() 這個委派機制拿掉看看,就會知道有什麼錯誤
06-21 10:41