【按键精灵】屏幕消息滚动浮窗实现

滚动显示代码如下:(显示不全可向右滑动)

```

Dim msg_arr(),msg_arrj(),msg_m=0
Thread.Start 主程序
Delay 1000
Do
dim msg=Thread.GetShareVar ("show")
dim msg_n=0
If msg_m = 0 Then
msg_arr(msg_m) = msg
msg_m=msg_m+1
Else
If msg_arr(msg_m-1) = msg Then
TracePrint "没有变化"
Else
msg_arr(msg_m) = msg
msg_m=msg_m+1
End If
End If
If UBOUND(msg_arr) < 5 Then
msg_arrj = Clone(msg_arr)
Else
For j = UBOUND(msg_arr) - 5 To UBOUND(msg_arr)
msg_arrj(msg_n) = msg_arr(j)
msg_n=msg_n+1
Next
End If
ShowMessage Join(msg_arrj, "\n"), 1000, 0, 0
Delay 100
Loop

Function 主程序()
For i = 1 To 25
Thread.SetShareVar "show", "拼接内容显示第" & i & "次"
Delay 1000
Next
End Function
```

 

代码中有些可调的地方:

①显示内容获取周期,源码是100毫秒,在第27行代码

②显示的行数,默认是6行,在第18行和第21行中的5是控制参数,如果想显示10行,可以把5改成9

赞 (0)