[英]Python - TKinter - Moving shape on canvas with a mouse
我需要找到一種方法來編寫以下代碼
1.有一個幾何 object 包含一個點數組,然后在 canvas 小部件上繪制(得到這個覆蓋)
2.當您左鍵單擊 canvas 時,它會檢查您是否在現有點的某個邊距內單擊,如果是這樣,則選擇了數組中的一個點(在搜索該點並選擇它方面涵蓋了這一點)
3.一旦選擇,點將跟隨鼠標,直到釋放鼠標按鈕。
單獨使用 Motion 事件似乎不起作用,因為在按下按鈕時似乎一遍又一遍地調用 function。 所以我需要在按下按鈕時觸發搜索 function 當按住按鈕時移動 function 。
我會很感激指點。
感謝 Dan Getz,我做了以下事情: - 將點選擇綁定到 select 點並將索引存儲在 self.selectedPoint - 綁定移動 function 以使用 self.selectedPoint 來指示數組中的選定點,然后傳遞事件 x,y坐標到數組作為選定點的新坐標 - 將 clearSelected function 綁定到將 self.selectedPoint 設置為 -1 從而清除選擇
我仍然遇到的問題是,當移動點時,我會在按住鼠標的同時更新屏幕,這會產生相當多的閃爍。 我想知道是否有什么我可以做的來防止這種情況發生。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.