我正在我的Qt项目中开发一个磁铁效果。有两个小部件( Master 和 Slave )。 Slave的左边框将被移动当 Slave 移动时, Master 右边框(我称之为磁效果)当它们相距30像素时,然后他们输入 TOGETHER_STATE 。一旦他们输入 TOGETHER_STATE ,当Master移动时奴隶将被移动,反之亦然。 **当Slave的左边界距离Master的右边界超过30像素时,他们进入SEPARATE_STATE。据我所知,Teamviewer有类似的效果。
实现磁体效果的一种方法是在Slave的moveEvent 移动功能 将 Slave 移动到 Master 右边框>当满足上述条件时。但它会导致轻弹,因为moveEvent中的移动小部件将导致无限递归。
有没有人有任何好主意?我是否让自己明白了?