簡體   English   中英

Qt mouseMoveEvent-跟蹤鼠標位置

[英]Qt mouseMoveEvent - tracking mouse position

我正在Qt中編寫我的第一個2D游戲。

QWidged我在哪里畫游戲(等軸測圖)。 當鼠標進入小部件的邊框時,它將移動地圖視圖(就像在每個策略游戲中一樣)。

這是我的麻煩...我正在使用mouseMoveEvent跟蹤鼠標位置,但僅在鼠標移動時才觸發(僅在位置更改時)。 因此,僅當我將鼠標移至邊界時地圖才會移動。 如果鼠標靜止不動,則地圖不會移動(不會觸發mouseMoveEvent)。 而且我不知道如何解決這個問題。 嘗試播放時很煩人。

這是我在這里的第一篇文章..我希望我清楚地解釋了我的問題:)

編輯 (稍作澄清):
想象一下:您想移動地圖。 因此,您將鼠標移到屏幕邊緣(QWidget),但是在您停止鼠標時,地圖也停止移動。 但是鼠標仍然在屏幕邊緣。 我想做的是鼠標停在邊緣后地圖仍會移動。

您可以為坐標創建QPropertyAnimation,並在鼠標移至小部件的邊界或從其邊界移出時啟動/停止它。 或者,您可以記住當前狀態(“每100毫秒將x改變-1,將y改變0”)並調用某個插槽,該插槽可以通過QTimer進行真正的移動。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM