EDA365电子论坛网

标题: 请问脚本窗口是否可以嵌入到软件windows里 [打印本页]

作者: alpb    时间: 2015-4-17 10:34
标题: 请问脚本窗口是否可以嵌入到软件windows里
如图所示!

QQ图片20150417103329.png (58.1 KB, 下载次数: 4)

QQ图片20150417103329.png

作者: deargds    时间: 2015-4-17 11:09
参考以下帖子内容
https://www.eda365.com/forum.php? ... mp;highlight=option
https://www.eda365.com/forum.php? ... mp;highlight=option
作者: alpb    时间: 2015-4-17 11:10
谢谢侬,学习一下!
作者: alpb    时间: 2015-4-17 15:02
deargds 发表于 2015-4-17 11:09
参考以下帖子内容
https://www.eda365.com/forum.php?mod=viewthread&tid=54247&highlight=option
http:// ...
  1. ;Allergo调用声明
  2. axlCmdRegister("quick_grids_setup" 'Quick_Grids_Setup)

  3. ;快捷键设置
  4. axlSetFunckey("~G" "quick_grids_setup")

  5. defun( Quick_Grids_Setup ()

  6.                         GridsZoomListmil = '(1 5 10 20 50 100 150 200)
  7.                         GridsZoomListmm = '(0.05 0.1 0.25 0.5 1 1.5 2 3)
  8.                         unit_conversion = axlGetParam("paramDesign")->units
  9.                         gridsetform()
  10.            )

  11. defun( gridsetform ()
  12. ;Using the let Function to define local variables
  13.           let( ()          
  14.         GridFormfile = "GridForm.form"
  15.         formport = outfile(GridFormfile "w")
  16.         
  17.                                 fprintf(formport "FILE_TYPE=FORM_DEFN VERSION=2\n")
  18.         fprintf(formport "FORM\n")
  19.         fprintf(formport "FIXED\n")
  20.         fprintf(formport "PORT 54 6\n")
  21.         fprintf(formport "HEADER \"Grids Setup\"\n")
  22.         
  23.         fprintf(formport "TILE\n")
  24.         
  25.                                 fprintf(formport "\n")
  26.                                 fprintf(formport "TEXT \"mil:\"\n")
  27.                                 fprintf(formport "TLOC 2 1\n")
  28.                                 fprintf(formport "ENDTEXT\n")
  29.                
  30.                                 fprintf(formport "\n")
  31.                                 fprintf(formport "TEXT \"mm:\"\n")
  32.                                 fprintf(formport "TLOC 2 3\n")
  33.                                 fprintf(formport "ENDTEXT\n")
  34.                
  35.         a = 6
  36.                                 foreach(grid GridsZoomListmil  
  37.                 fprintf(formport "FIELD %L_mil\n" grid)
  38.                 fprintf(formport "FLOC %d 1\n" a)
  39.                 fprintf(formport "FGROUP \"displayunit\"\n")
  40.                 fprintf(formport "CHECKLIST %L\"displayunit\"\n" grid)
  41.                 fprintf(formport "ENDFIELD\n")
  42.                                 a = a+6
  43.                        )      
  44.           
  45.         a = 6
  46.                                 foreach(grid GridsZoomListmm
  47.                 fprintf(formport "FIELD %L_mm\n" grid)
  48.                 fprintf(formport "FLOC %d 3\n" a)
  49.                 fprintf(formport "FGROUP \"displayunit\"\n")
  50.                 fprintf(formport "CHECKLIST %L\"displayunit\"\n" grid)
  51.                 fprintf(formport "ENDFIELD\n")
  52.                                 a = a+6
  53.                        )            
  54.           
  55.                           fprintf(formport "ENDTILE\n")
  56.               fprintf(formport "ENDFORM\n")
  57.       
  58.               close(formport)
  59.              
  60.                           displaygrdform = axlFormCreate((gensym) GridFormfile '(se inner) 'Grid_act t)
  61.                           axlFormDisplay(displaygrdform)
  62.                           deleteFile("GridForm.form")
  63.                           axlControlRaise('options)
  64.                           axlEnterPoint()
  65.           ))
  66.           
  67. defun( Grid_act (displaygrdform)

  68.                                 grid_set = displaygrdform->curField
  69.                           setgrid = atof(car(parseString(grid_set "_")))
  70.                           if(car(reverse(parseString(grid_set "_"))) == "mil"
  71.                                   then
  72.                                            case(unit_conversion
  73.                                 ("mils"  setgrid)
  74.                                             ("millimeters" setgrid = setgrid/39.37)
  75.                                                         ("inches" setgrid = setgrid/1000)
  76.                                                         ("centimeters" setgrid = setgrid/393.7)
  77.                                                         ("microns" setgrid = setgrid* 25.4 )
  78.                               )
  79.                                           SetCurGrid(setgrid)
  80.                                   else
  81.                                           if(car(reverse(parseString(grid_set "_"))) == "mm"
  82.                                           then                    
  83.                                                    case(unit_conversion
  84.                                         ("mils"  setgrid = setgrid* 39.37)
  85.                                                     ("millimeters" setgrid)
  86.                                                                 ("inches" setgrid = setgrid* 0.03937)
  87.                                                                 ("centimeters" setgrid = setgrid/10)
  88.                                                                 ("microns" setgrid = setgrid* 1000)
  89.                                               )   
  90.                                                   SetCurGrid(setgrid)
  91.                                      )
  92.                     )
  93.           )
  94.   
  95. defun( SetCurGrid (gridnum)          
  96.           grid = axlDBGridGet("TOP")
  97.           grid->name = 'all
  98.           grid->xGrids = gridnum
  99.           grid->yGrids = gridnum
  100.           axlDBGridSet(grid)
  101.           )

复制代码
照猫画虎插入那两条命令还是木有作用,您看下是不是还是位置不对呀,请您解释下。

作者: deargds    时间: 2015-4-17 15:12
alpb 发表于 2015-4-17 15:02
照猫画虎插入那两条命令还是木有作用,您看下是不是还是位置不对呀,请您解释下。

这样来写
  1. displaygrdform = axlMiniStatusLoad( (gensym) GridFormfile  'Grid_act t)
复制代码



作者: alpb    时间: 2015-4-17 15:32
deargds 发表于 2015-4-17 15:12
这样来写

呵呵,成功了,但是我发现他没法作为一个单独的窗口,还是占用了"option"的窗口,那有不占用那三个窗口,生成另外的窗口去嵌入的方法么

作者: alpb    时间: 2015-4-17 15:33
deargds 发表于 2015-4-17 15:12
这样来写

或者放到工具栏也可以

作者: deargds    时间: 2015-4-17 16:21
alpb 发表于 2015-4-17 15:32
呵呵,成功了,但是我发现他没法作为一个单独的窗口,还是占用了"option"的窗口,那有不占用那三个窗口, ...

这个暂时没有





欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/) Powered by Discuz! X3.2