SetBatchLines -1

WinW := XPos2 := 300
Gui Font, s14, Microsoft YaHei UI
text := "测试Gui显示文字的循环滚动效果,将会循环展示这段文字"
Gui +ToolWindow +AlwaysOnTop
Gui Add, Text, x%XPos2% y15 BackgroundTrans vtext4, %text%

GuiControlGet, Text4, Pos
Gui Add, Text, % "x-999 y10 w9999 h" (Text4H += 10) " +0x12"  ; 上下分割线

Gui Show, w%WinW% h60, 滚动文字展示
; /*
SetTimer Animate, % 21 - 5
Return

Animate:
GuiControl Move, Text4, % "x" (XPos2-=2)
GuiControlGet Text4, Pos
If (text4X + text4W < 0)
  XPos2 := WinW
Return
*/

; Loop会占有线程,Loop+Sleep的精度计算与SetTimer不一样
  Loop {
    Sleep 21
    GuiControl Move, Text4, % "x" (XPos2-=2)
    GuiControlGet Text4, Pos
    If (text4X + text4W < 0)
      XPos2 :=  WinW  ; Break
  }
  ; Gui Hide
Return

GuiClose:
  ExitApp

 

声明:站内资源为整理优化好的代码上传分享与学习研究,如果是开源代码基本都会标明出处,方便大家扩展学习路径。请不要恶意搬运,破坏站长辛苦整理维护的劳动成果。本站为爱好者分享站点,所有内容不作为商业行为。如若本站上传内容侵犯了原著者的合法权益,请联系我们进行删除下架。