东风破 发表于 2014-1-3 15:43:47

菜鸟也谈一下Execute的用法,望大神指教

几月前第一次使用Execute,手头上一个小程序又要用到它,故此在论坛又搜了一番,原来大神们早有讨论。感兴趣的移步这里:
http://www.autoitx.com/forum.php?mod=viewthread&tid=31271&highlight=execute

从一个思路开始吧:


如上图,一排radio是想实现筛选的功能(比如:华硕对应的是“华硕”“asus”关键字)。我所想到的思路有这些:
1. 每次触发radio的时候使用正则筛选一次(菜鸟也不懂啥效率,但总感觉这样很耗cpu。再就是,“其它”这个radio是匹配其它关键字筛选剩下的数据,感觉不好处理)
2. 先把对应的关键字筛选出来保存到各自的变量,触发radio的时候直接显示。(最后我用的是这个思路)

但是,使用第2个思路的时候总免不了使用select或switch来为每个radio匹配对应的变量,这样如果有很多radio的话估计不方便。(也许大神们有更好的办法)
于是我使用Execute如下:Assign("sx_" & $Radio[$i], Execute("$sx_" & $Radio[$i]) & "|" & $data, 2)以每个radio的控件ID创建对应的变量。(感觉就是一句话:Execute实现创建包含变量的变量名)
这样就能省去不少代码了吧,也不知道这样用会不会影响程序的效率,特发出来等待大神指教

boyhong 发表于 2014-1-3 20:34:43

是啊~~~~~~~用循环批量创建一批变量时很省事,代码很精简~~

joyran 发表于 2014-1-3 20:39:47

楼主蛮有想法!赞一个

东风破 发表于 2014-1-3 21:38:53

回复 2# boyhong


    嗯嗯,多谢。

东风破 发表于 2014-1-3 21:39:19

回复 3# joyran


    谢谢,还望多多指教。

afan 发表于 2014-1-3 23:06:05

没有完整功能代码,不过就1#的一行代码及LZ的思路而言,似乎可以和 Execute 无关,或者说是多余的 …

另外,如果列表项目少还无所谓,如果多了的话,从组织、修改、维护来看,显然还是第一种思路简单、靠谱

东风破 发表于 2014-1-4 08:49:30

回复 6# afan


    哈哈,还是A大眼神利索。的确是的,字母和数字的组合用数组也可以,只是,感觉这样明了一些。
我感觉自己写的很乱,不知道是不是自己思路错了。
页: [1]
查看完整版本: 菜鸟也谈一下Execute的用法,望大神指教