wuyuhe 发表于 2015-8-21 12:26:12

请高手帮忙修改一下ENUM的SKILL

想要出来下图这样的结果,但是FORM一直出不来,帮忙看一下哪里出错了
axlCmdRegister("emnutest" 'emnutest ?cmdType "general")
procedure(emnutest()
      enumFormCreate()      
      formPort = axlFormCreate((gensym) "enum.form" nil nil t nil)
      axlFormDisplay(formPort)      
      axlFormBuildPopup(formPort "subclass" '(("item")))
      axlFormBuildPopup(formPort "Layer" (list "Package Geometry"))
)
procedure(enumFormCreate()
      enumFormPort = outfile("enum.form")
      fprintf(enumFormPort "FILE_TYPE=FORM_DEFN VERSION=2\n")
      fprintf(enumFormPort "FORM\n")
      fprintf(enumFormPort "FIXED\n")
      fprintf(enumFormPort "PORT 30 50\n")
      fprintf(enumFormPort "HEADER \"Enum Test\"\n\n")
      
      fprintf(enumFormPort "POPUP <Layer> \"Package Geometry\" \"Package Geometry\"")
      
   Desing_Layers=(axlGetParam("paramLayerGroup:Package Geometry")->groupMembers)
   fprintf(enumFormPort "POPUP <Layer_Names>")
      foreach(Item Desing_Layers
    if(Item=="ASSEMBLY_TOP" then
   (fprintf enumFormPort "\"%s\"" Item)
   (fprintf enumFormPort "\"%s\".\n" Item)
   else
   (fprintf enumFormPort "\"%s\"" Item)
   (fprintf enumFormPort "\"%s\"," Item)
    )
    )      

      fprintf(enumFormPort "TILE\n\n")
      fprintf(enumFormPort "FIELD Layer\n")
      fprintf(enumFormPort "FLOC 5 1\n")
      fprintf(enumFormPort "ENUMSET 19\n")      
      fprintf(enumFormPort "OPTIONS prettyprint\n")
      fprintf(enumFormPort "POP \"Layer\"\n")      
      fprintf(enumFormPort "ENDFIELD\n\n")
      
fprintf(enumFormPort "FIELD subcolor \n")
fprintf(enumFormPort "FLOC 1 3 \n")
fprintf(enumFormPort "COLOR 2 1 \n")
fprintf(enumFormPort "OPTIONS colorchooser \n")
fprintf(enumFormPort "ENDFIELD \n")

fprintf(enumFormPort "FIELD subclass \n")
fprintf(enumFormPort "FLOC 5 3 \n")
fprintf(enumFormPort "ENUMSET 19 \n")
fprintf(enumFormPort "POP \"Layer_Names\" \n")
fprintf(enumFormPort "OPTIONS prettyprint ownerdrawn \n")
fprintf(enumFormPort "ENDFIELD \n")
      
      fprintf(enumFormPort "ENDTILE\n")
      fprintf(enumFormPort "ENDFORM\n")
      close(enumFormPort)
)

wuyuhe 发表于 2015-8-21 12:29:29

ENUMFormCreate() 我源代码是小写的不知道粘贴的时候为什么ENUM变大写了,且POP中的P都变成表情了

wuyuhe 发表于 2015-8-21 12:30:08

ENUMFormCreate() 我源代码是小写的不知道粘贴的时候为什么ENUM变大写了,且POP中的P都变成表情了

vivienluo 发表于 2015-8-22 10:34:09

fprintf(enumFormPort "POPUP <Layer> \"Package Geometry\" \"Package Geometry\"\n")



少了一个换行符!
页: [1]
查看完整版本: 请高手帮忙修改一下ENUM的SKILL