tiantian180 / MilesEdgeworth

用Qt C++写的御剑怜侍桌宠
GNU General Public License v3.0
104 stars 12 forks source link

调整为使用QWidget::mouseDoubleClickEvent处理双击,取消定时器判断 #4

Closed Typedefining closed 5 months ago

Typedefining commented 5 months ago

似乎没有必要使用定时器手动判断双击,qt提供有现成double检测

tiantian180 commented 5 months ago

谢谢你的建议!其实我使用计时器来判断双击的目的是限制触发双击事件之前不能触发单击事件,从而彻底区分开单击和双击的效果。用mouseDoubleClickEvent来判断双击的缺点是它也会触发一次单击事件。不过因为单击的效果只是切换动画,而双击的效果也包含切换动画,双击效果恰好可以覆盖掉单击效果,因此双击之前先触发一次单击的效果也不要紧。但大臂区域需要特殊处理,因为单击大臂的时候人物会转向(direction = 1-direction),所以在双击事件里也需要对大臂区域做特殊处理,再转向一次让他转回去。