发表回复 
如何批量生成Button?
2017-07-17, 13 : 11
如何批量生成Button?
想给自己的B站缓存视频写个播放控制列表,实现以下功能:

在1个GUI窗体内,每间隔一段竖直距离就生成1个按钮,总共20个按钮,按钮显示名称中包含空格,类似于“第1集 XXXX”这样,然后点击某按钮就触发打开相应集的动作,比如点击按钮1,就用B站播放器打开第1集的视频和弹幕
希望的是按钮数量,按钮间距离,按钮显示名称都能设置为变量,方便随时修改

完全是代码小白,播放的那个功能勉强折腾出来了,主要是GUI的语句语法什么的都不太清楚,在网上只找到了基本用法,不知道怎么替换成变量,也不知道怎么在名称里加空格,​求大神指教,拜谢
查找这个用户的全部帖子
表示感谢 引用并回复 移动视图置页面顶端
2017-07-18, 11 : 33
RE: 如何批量生成Button?
写了个简单的示范代码,仅供参考。
代码: (全选)
按钮数量     = 20
按钮间的距离 = 15
按钮所有名称 =
(
第1集 XXXX
第2集 XXXX
第3集 XXXX
第4集 XXXX
)
按钮所有网址 =
(
http://XXXX1
http://XXXX2
http://XXXX3
http://XXXX4
)

Gui, Color, DDEEFF
Gui, Margin,, %按钮间的距离%
Gui, Font, s16
Loop % 按钮数量
{
  i:=A_Index, j:=Mod(i,2)=1 ? "xm" : "x+15"
  名称:=StrSplit(按钮所有名称,"`n")[i]
  Gui, Add, Button, %j% w400 r1 g运行 v@%i%, %名称%
}
Gui, Show,, 我的播放列表
return

运行:
Gui, +OwnDialogs

; A_GuiControl ==> @[email protected]@20
i:=SubStr(A_GuiControl,2)

网址:=StrSplit(按钮所有网址,"`n")[i]

;-- 这里改成播放网址代码,目前仅是提示
MsgBox, %网址%
return

; 所用 F1热键 可以显示/隐藏窗口
F1::Gui, Show, % ok:=!ok ? "Hide":""
查找这个用户的全部帖子
表示感谢 引用并回复 移动视图置页面顶端
发表回复 


论坛跳转:


联系我们 | Autohotkey 中文站 | 回到顶部 | 回到正文区 | 精简(归档)模式 | RSS 聚合