滑鼠點擊與長按
雖然 Scratch 裡具有滑鼠「點擊」的程式積木,但卻沒有提供「長按」功能,這篇教學會使用 Scratch 裡的重複迴圈和等待,搭配廣播機制,實作滑鼠點擊與長按的效果。
快速導覽:
積木程式原理 ( 舞台 )
因為要偵測滑鼠的點擊事件,因此可以直接將程式寫在「舞台」裡,點擊最右側的「舞台」。
開始編輯舞台的程式,首先新增一個變數 ms 代表「微秒」( 1/1000000 秒 ),接著使用重複無限次搭配「等待直到按下滑鼠」,就能實現偵測點擊的效果。
完成後點擊綠旗,在舞台上點擊滑鼠,點擊時可以發現 ms 變數會以「極快」的速度增加,這表示雖然只「點擊一下」,但實際從按下到放開的時間都會被完整紀錄 ( 以微秒的尺度來說,不只是點擊一下 ),透過這個機制,就能判斷長按或點擊。
按照下圖修改程式,改成等待按下滑鼠時將 ms 歸零,並額外使用另一個重複等待迴圈增加 ms 的數值,如果 ms 大於 1000000 ( 1 秒 ) 就發送長按的廣播訊號,如果放開滑鼠迴圈就會終止,放開滑鼠後如果 ms 小於 1000000,就發送點擊的廣播訊號。
積木程式原理 ( cat )
點擊貓咪角色「cat」,設定收到長按訊號時,說出「長按」,收到點擊訊號時,說出「點擊」。
完成效果
所有角色的程式都完成後,點擊綠旗,在舞台上用滑鼠點擊或長按,就會看見貓咪說出不同的滑鼠事件狀態。
範例解答
範例解答:Scratch 教學 - 滑鼠點擊與長按
意見回饋
如果有任何建議或問題,可傳送「意見表單」給我,謝謝~