找回密码
 注册
关于网站域名变更的通知

[求助]在Form中,如何获取单选框的选中项是哪一个

查看数: 1529 | 评论数: 14 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2020-12-4 12:29

正文摘要:

本帖最后由 leilei4908 于 2020-12-4 12:31 编辑                  fprintf(f "FIELD _ap\n")         fprin ...

回复

leilei4908 发表于 2020-12-10 14:19
jet2001 发表于 2020-12-10 11:36
早上讀大老寫的rpn的skill , 他的作法和你一樣 也是用另一個參數來設定
pmc_type = "_ap" ....

        cond(
                (axlFormGetField(pmcForm "_ap")
                        pmc_type = "_ap"
                )
                (axlFormGetField(pmcForm "_pb")
                        pmc_type = "_pb"
                )
                (axlFormGetField(pmcForm "_sk")
                        pmc_type == "_sk"
                )
                (axlFormGetField(pmcForm "_as")
                        pmc_type = "_as"
                )
                (axlFormGetField(pmcForm "_dp")
                        pmc_type = "_dp"
                )
                (axlFormGetField(pmcForm "_sp")
                        pmc_type = "_sp"
                )
                (axlFormGetField(pmcForm "_hs")
                        pmc_type = "_hs"
                )
                (axlFormGetField(pmcForm "_pw")
                        pmc_type = "_pw"
                )
        )

代码简化下
      fields = list("_ap" "_pb" "_sk" "_as" "_dp" "_sp" "_hs" "_pw")
      foreach(field fields
            when(axlFormGetField(pmcForm field)
                pmc_type = field
            )
      )

jet2001 发表于 2020-12-10 12:49
我去看手上USA CANDENCE 原廠的 SKILL 也都是用另一個參數來設定
leilei4908 发表于 2020-12-10 11:40
jet2001 发表于 2020-12-10 11:36
早上讀大老寫的rpn的skill , 他的作法和你一樣 也是用另一個參數來設定
pmc_type = "_ap" ....

所以目前来看,的确是没有更好的方法了
原本以为,根据相同的radioLable,组成的单选项
应该可以根据这个radioLable获取到单选项的结果
jet2001 发表于 2020-12-10 11:36
早上讀大老寫的rpn的skill , 他的作法和你一樣 也是用另一個參數來設定
pmc_type = "_ap" ....

点评

cond( (axlFormGetField(pmcForm "_ap") pmc_type = "_ap" ) (axlFormGetField(pmcForm "_pb") pm  详情 回复 发表于 2020-12-10 14:19
所以目前来看,的确是没有更好的方法了 原本以为,根据相同的radioLable,组成的单选项 应该可以根据这个radioLable获取到单选项的结果  详情 回复 发表于 2020-12-10 11:40
leilei4908 发表于 2020-12-9 18:05
jet2001 发表于 2020-12-9 17:53
"我需要的是CHECKLIST的选中项"
我的作法是放在右上"drc_type" 下拉選項 , 一選好就立刻執行 各選項有各自 ...

把几组 CHECKLIST 控件合并成 ENUMSET 当然是个不错的选择
但 CHECKLIST 能够直观的看到所有的选项,也有不可替代的作用
我目前需要的就是怎么能够获取单选的结果是什么
也就是相同 radioLable 的 CHECKLIST,目前选中的是哪一个
所以请不要推荐我把 CHECKLIST 改成 ENUMSET 控件了
jet2001 发表于 2020-12-9 17:53
"我需要的是CHECKLIST的选中项"
我的作法是放在右上"drc_type" 下拉選項 , 一選好就立刻執行 各選項有各自的skill 在跑
  ("drc_type" _drcType=(Form_status->curValue)
    case( _drcType
         ("Top-Text Angle"   (ttextlst) _drcZoomSize=10)  
         ("Bot-Text Angle"   (btextlst) _drcZoomSize=10)
         ("Top-Text on PAD"  (ttpadlst) _drcZoomSize=6)
         ("Bot-Text on PAD"  (btpadlst) _drcZoomSize=6)
         ("Top-Text on VIA"  (ttvialst) _drcZoomSize=4)
         ("Bot-Text on VIA"  (btvialst) _drcZoomSize=4)
         ("Package to Keepin"  (p2ilst) _drcZoomSize=20)
         ("Package to Keepout" (p2olst) _drcZoomSize=20)
         ("Package to Package" (p2plst) _drcZoomSize=20)
         ("Top-2D on VP"  (tt2dvp) _drcZoomSize=3)

z2.png (16.04 KB, 下载次数: 0)

z2.png

点评

把几组 CHECKLIST 控件合并成 ENUMSET 当然是个不错的选择 但 CHECKLIST 能够直观的看到所有的选项,也有不可替代的作用 我目前需要的就是怎么能够获取单选的结果是什么 也就是相同 radioLable 的 CHECKLIST,目  详情 回复 发表于 2020-12-9 18:05
leilei4908 发表于 2020-12-9 17:50
jet2001 发表于 2020-12-9 17:37
當我如圖 在 list 選第3個時case( Form_status->curField
會到這裡開始跑 ("drc_list" _drcNum=(Form_stat ...

抱歉,可能是我描述的不清楚
我针对的是CHECKLIST这个控件,不是LIST
格式是
CHECKLIST "display" ["radioLabel"]
如果radioLable没有定义
就是你这边的Report这个单独的勾选项

如果radioLable有定义
那么相同的radioLable,组成一个单选项
jet2001 发表于 2020-12-9 17:37
當我如圖 在 list 選第3個時case( Form_status->curField
會到這裡開始跑 ("drc_list" _drcNum=(Form_status->curValueInt) (_p2pdisp)...

_drcNum抓到的值是2 ; (0 1 2 3 4)

z1.png (17.18 KB, 下载次数: 0)

z1.png

点评

抱歉,可能是我描述的不清楚 我针对的是CHECKLIST这个控件,不是LIST 格式是 CHECKLIST "display" ["radioLabel"] 如果radioLable没有定义 就是你这边的Report这个单独的勾选项 如果radioLable有定义 那么  详情 回复 发表于 2020-12-9 17:50
jet2001 发表于 2020-12-9 17:30
leilei4908 发表于 2020-12-9 17:19
CHECKLIST对应的Field,能获取到的 curValue 只有 t 或者 nil
也就是有被选上和没被选上的状态

前文不是CHECKLIST ; CHECKLIST是如下
.....
  ("drc_list" _drcNum=(Form_status->curValueInt) (_p2pdisp)
    if(NumDRCs>0 && (_drcType=="Top-Text Angle"||_drcType=="Bot-Text Angle") then
             axlFormSetFieldEditable(_drcForm "drc_prev" 1)
     else    axlFormSetFieldEditable(_drcForm "drc_prev" 0) ) )
  ("drc_next" _drcNum=(add1 _drcNum) (_p2pdisp)
    if(NumDRCs>0 && (_drcType=="Top-Text Angle"||_drcType=="Bot-Text Angle") then
             axlFormSetFieldEditable(_drcForm "drc_prev" 1)
     else    axlFormSetFieldEditable(_drcForm "drc_prev" 0) ) )
.....


jet2001 发表于 2020-12-9 17:27
drc.form內容如下:
FILE_TYPE=FORM_DEFN VERSION=2
FORM
FIXED
PORT 46 14
HEADER "Allegro DRC Walker"
POPUP <drc_layer_p>"a""a".
POPUP <drc_type_p>"a""a".
TILE

FIELD drc_layer
FLOC 0 1
ENUMSET 12
POP "drc_layer_p"
ENDFIELD

FIELD drc_type
FLOC 15 1
ENUMSET 29
POP "drc_type_p"
ENDFIELD

FIELD drc_list
FLOC 0 4
LIST "Matching DRCs" 47 5
ENDFIELD

FIELD drc_showobj
FLOC 1 13
CHECKLIST "Report"
ENDFIELD

FIELD drc_zoomsize
FLOC 10 13
INTSLIDEBAR 2 2
MIN 1
MAX 99
ENDFIELD

FIELD drc_next
FLOC 17 13
MENUBUTTON "下一個" 8 3
ENDFIELD

FIELD drc_prev
FLOC 27 13
MENUBUTTON "修正" 8 3
ENDFIELD

FIELD done
FLOC 37 13
MENUBUTTON "離開" 8 3
ENDFIELD

ENDTILE
ENDFORM
leilei4908 发表于 2020-12-9 17:19
jet2001 发表于 2020-12-9 16:06
我沒用過axlFormGetField(pmcForm "_ap")
你是否改用 a888=axlFormGetField(pmcForm "_ap")
; a888的資料 ...

CHECKLIST对应的Field,能获取到的 curValue 只有 t 或者 nil
也就是有被选上和没被选上的状态

点评

前文不是CHECKLIST ; CHECKLIST是如下 ..... ("drc_list" _drcNum=(Form_status->curValueInt) (_p2pdisp) if(NumDRCs>0 && (_drcType=="Top-Text Angle"||_drcType=="Bot-Text Angle") then  详情 回复 发表于 2020-12-9 17:30
leilei4908 发表于 2020-12-4 13:54
srilri2 发表于 2020-12-4 13:43
js:var sex=$("input[name='sex']:checked").val();

抱歉,我需要的是skill的方式,java在allegro中应该是不能使用的吧
srilri2 发表于 2020-12-4 13:43
js:var sex=$("input[name='sex']:checked").val();

点评

抱歉,我需要的是skill的方式,java在allegro中应该是不能使用的吧  详情 回复 发表于 2020-12-4 13:54
关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-22 06:51 , Processed in 0.187500 second(s), 30 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表