我意识到我移动图像的算法是一团糟,但是现在并不重要。我的问题确实与以下内容有关-是否可以将其设置为当我双击dblclick事件触发时,将doubleClicked更改为false,然后退出我的循环?
Dim orginx As Long
Dim originy As Long
Dim doubleClicked As Boolean
Private Sub Image1_Click()
doubleClicked = False
originx = Image1.Left
originy = Image1.Top
Do
If originx / 2 > 1 Then
Do
Image1.Left = originx - 2
Image1.Top = originy - 2
originx = Image1.Left
originy = Image1.Top
Loop Until originx / 2 < 1
Else
Do
Image1.Left = originx + 2
Image1.Top = originy + 2
originx = Image1.Left
originy = Image1.Top
Loop Until originx + 2 > 432
End If
Loop Until doubleClicked = True
End Sub
Private Sub Image1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
doubleClicked = True
End Sub
答案 0 :(得分:0)
是的。您需要在do循环中添加一个DoEvents()(随处可以执行),但这会带来性能损失。