|
deargds 发表于 2014-10-23 09:03 axlClearSelSet() axlSetFindFilter(?enabled `("NOALL" "VIAS") ?onButtons `("VIAS")) mypopup = axlUIPopupDefine( nil (list (list "Done" 'axlFinishEnterFun) (list "Cancel" 'axlCancelEnterFun))) axlUIPopupSet( mypopup) ; Use the generic select instead of box, so the user can use temp group axlSelect(?prompt "Select vias by pick or window."); vias = axlGetSelSet() x3=axlFormGetField(copyform "X11") y3=axlFormGetField(copyform "Y11") x=atof(x3) y=atof(y3) when(vias axlCopyObject(vias, ?move x:y ?retainNet nil) axlVisibleUpdate(t) );end when );end defun |
本帖最后由 deargds 于 2014-10-23 16:37 编辑 lyh289114980 发表于 2014-10-23 12:15 如果你希望ECOPY1按钮首次点击时允许选择VIAS,然后后面的点击只执行COPY VIA动作,可以参考下面代码,不过你需要在一次操作完成后将VIAS变量清除掉,以便下次选择目标VIA时生效: 另外针对程序建议选择目标VIA的动作跟COPY的动作分开来处理.
|
| 头都看晕了,执行copy命令,设一下参数就好, |
deargds 发表于 2014-10-23 19:48 谢谢版主,按照你格式已经好了。感谢!!!! |
deargds 发表于 2014-10-23 19:48 这个我会啊,但是只有自己预设的几个值啊,不能填写。是我哪出错了么 |
lyh289114980 发表于 2014-10-23 18:06 常规的输入框中添加POP定义即可,记忆参数需要在程序中做相应的处理。 FIELD xxx FLOC 1 11\ STRFILLIN 26 52 POP YourPopup ENDFIELD |
deargds 发表于 2014-10-23 13:16 版主请问下Allegro中的连线命令下的填写线宽的栏是怎么实现的,它可以选择以可以填写,而且它还能记住我填写过的线宽值,用skill怎么写?谢谢! |
deargds 发表于 2014-10-23 13:16 这个方法可以试试,谢谢! |
betamelody 发表于 2014-10-23 11:08 唉。。。。算我描述不清吧,我的意思是:我在X1和Y1中输入两数值,然后点击Ecopy1这个按钮(中途选择一次Via,它的坐标a:b),连续点击n次按钮产生坐标n个via,这些Via的坐标依次为:(a+x^1,b+y^1);(a+x^2,b+y^2);(a+x^3,b+y^3)..........;(a+x^n,b+y^n).请注意我是连续点击按钮而不是连续点击屏幕上的任意点! |
本帖最后由 deargds 于 2014-10-23 11:40 编辑 lyh289114980 发表于 2014-10-23 10:36 那用axlEnterPoint()来循环选点就行了,参考betamelody版主的代码 |
deargds 发表于 2014-10-23 10:19 这个就是Ecopy1按钮的全部代码啊,我的操作方式是:我在X1和Y1中输入两数值,然后点击Ecopy1这个按钮(中途选择一次Via),连续点击n次产生n个via。 |
lyh289114980 发表于 2014-10-23 09:45 不是太明白你这个程序要实现的功能,还有操作的方式,代码能全部贴出来更好. |
deargds 发表于 2014-10-23 09:28 这样不行吧,把axlSelect放到循环中只是让你循环选择VIA啊,与手动连续点击按钮复制不同呀。 |
lyh289114980 发表于 2014-10-23 09:07 axlSelect放到while循环中来执行,这样就不会结束了 |
/1
关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )
GMT+8, 2025-11-22 09:51 , Processed in 0.187500 second(s), 31 queries , Gzip On.
地址:深圳市南山区科技生态园2栋A座805 电话:19926409050