EDA365电子论坛网
标题:
【求助】allegro can't faind window: form.upd_element
[打印本页]
作者:
liuyidao
时间:
2023-9-19 22:39
标题:
【求助】allegro can't faind window: form.upd_element
用script录制了一个更新封装的脚本。用skill仿照这个格式生成同样的脚本。通过窗口replay可以正常运行,但是直接用skill运行这个脚本会提示can't faind window: form.upd_element,请问这是什么原因。
作者:
liuyidao
时间:
2023-9-19 22:40
can't find window; form.upd_element
作者:
dzkcool
时间:
2023-9-20 09:56
调用更新封装的命令没写好,导致窗口没打开
作者:
liuyidao
时间:
2023-9-21 07:02
dzkcool 发表于 2023-9-20 09:56
调用更新封装的命令没写好,导致窗口没打开
窗口能打开,但是没有接下来的动作。而且无论时通过菜单script里的replay 还是在commond栏里输入replay xx.scr。这个脚本都能正常运行,就是通过skill不能正常运行。
作者:
liuyidao
时间:
2023-9-27 21:30
自问自答一下,暂时没有找到不能操作窗口的原因。
为了实现相同的功能,这里换了一个思路,直接用allegro skill函数实现封装的更新,下面把核心的内容贴出来,供大家参考,有更好的思路也可以分享。
代码核心部分在16.5和17.2上都已经做了验证。
(defun AUpdatefootprint()
...........;这里省去的是footprint_list的获取过程,不同情形获取方式不同。
if( (nequal footprint_list nil) then
axlDBIgnoreFixed(t)
when( footprint_list
axlDBCloak( 'UpdateSigsym(footprint_list) 'shape)
)
printf("\n====Refresh successfully !---\n ## ")
else
printf("\n====No Symbol listed to refresh!---\n ## ")
)
)
(defun UpdateSigsym (footprintdatebase_list)
i=0
foreach(footprint_db footprintdatebase_list
x=axlRefreshSymbol(footprint_dbfootprint_db)
if( (equal x nil) then
printf("%s--failed to refresh\n" footprint_db)
else
i=i+1
printf("%d--%s--refreshed\n" i,footprint_db)
)
)
)
复制代码
欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/)
Powered by Discuz! X3.2