试试这个全局函数吧 希望对你有帮助
你只需修改DialogName参数
Sub ShowDialog(Byval DialogName,Byval x,Byval y)
''''''''对话框显示位置自动调整函数函数
''''''''鼠标事件按左键事件中调用
''''''''DialogName为要显示对象的名称 x,y为鼠标点击的位置(鼠标左键事件中调用直接为X,Y)
''''''''例:Call ShowDialog("1号鼓风机放空气阀_Dialog",x,y)
''''''''by:逐渐变晕
Dim PageWidth,PageHeight,DiaWidth,DiaHeight,PX,PY,Constval
Constval=30 ''''''''调整显示对话框距离鼠标点击点距离
PageWidth=HMIRuntime.Screens ("").Width
PageHeight =HMIRuntime.Screens ("").Height
DiaWidth=ScreenItems(DialogName).Width
DiaHeight=ScreenItems(DialogName).Height
px=x+Constval
PY=y+Constval
If x+DiaWidth+Constval >=PageWidth Then
PX=x-Constval*2-DiaWidth
End If
If y+DiaHeight+Constval >=PageHeight Then
PY=y-Constval*2-DiaHeight
End If
ScreenItems(DialogName).Left=PX
ScreenItems(DialogName).Top=PY
ScreenItems(DialogName).Visible = True
End Sub
Sub EndDialog(Byval DialogName)
Dim PageWidth
PageWidth=HMIRuntime.Screens ("").Width
ScreenItems(DialogName).Left=ScreenItems(DialogName).Left+PageWidth
End Sub