久久中文视频-久久中文网-久久中文亚洲国产-久久中文字幕久久久久-亚洲狠狠成人综合网-亚洲狠狠婷婷综合久久久久


曙海教育集團(tuán)論壇Cadence專(zhuān)區(qū)Cadence PCB設(shè)計(jì)初中級(jí) → Cadence Allegro SKILL語(yǔ)言


  共有12646人關(guān)注過(guò)本帖樹(shù)形打印

主題:Cadence Allegro SKILL語(yǔ)言

美女呀,離線(xiàn),留言給我吧!
wangxinxin
  1樓 個(gè)性首頁(yè) | 博客 | 信息 | 搜索 | 郵箱 | 主頁(yè) | UC


加好友 發(fā)短信
等級(jí):青蜂俠 帖子:1393 積分:14038 威望:0 精華:0 注冊(cè):2010-11-12 11:08:23
Cadence Allegro SKILL語(yǔ)言  發(fā)帖心情 Post By:2010-12-8 13:34:29

大綱:
    (一)、SKILL基礎(chǔ)
    (二)、利用AXL接口操作Allegro PCB對(duì)象
    (三)、注冊(cè)和使用自定義Allegro命令
    (四)、Allegro UI界面設(shè)計(jì)和響應(yīng)

Email: [email protected]   (以前的郵箱丟了)


四、Allegro UI界面設(shè)計(jì)和響應(yīng)
1、簡(jiǎn)介
    界面是交互設(shè)計(jì)中不可缺少的一部分,很多時(shí)候我們無(wú)法只讓程序孤芳自賞地運(yùn)行
   
2、基于文本描述的SKILL界面設(shè)計(jì)
    例子:Example.form(簡(jiǎn)單的幾段文字已經(jīng)勾勒出我們想要的界面)
   
    FILE_TYPE=FORM_DEFN VERSION=2
    FORM
    FIXED
    PORT 26 20
   
    HEADER "FINDER..."
    TILE
    TEXT "COMPONENT LIST"
    TLOC 1 1
    FSIZE 25 3
    ENDTEXT
   
    FIELD Placed_List
    FLOC 1 3
    LIST "" 24 16
    OPTION sort
    ENDFIELD
    FIELD done
    FLOC 9 33
    MENUBUTTON "  OK  " 10 3
    ENDFIELD
    ENDTILE
    ENDFORM
   
3、測(cè)試Form的方法
    Form測(cè)試接口函數(shù)axlFormTest(s_formPath)
   
    示例:
        axlFormTest("C:\\Example.form")
   
    功能:
        利用這個(gè)函數(shù)可以檢查Form文件的語(yǔ)法以及Form的顯示效果, 編輯界面時(shí)不斷使用,使你的界面更加漂亮
        
    Tips:
        A、Allegro所有的Form文件都放在Setup - User Preferences...菜單,選擇UI_Path列別中的formpath。
           查看Allegro所有界面文件,很好的界面重用資源
           
        B、將自定義的Form文件放在formpath下可以不用寫(xiě)絕對(duì)路徑調(diào)用,不信試試
        
4、界面工具開(kāi)發(fā)ABCDE
    A、創(chuàng)建界面文件并使用axlFormCreate或axlMiniStatusLoad打開(kāi)Form句柄(注意卸磨殺驢)
    B、使用axlFormSetField初始化界面區(qū)域
    C、axlFormDisplay顯示界面
    D、在axlFormCallback中定義用戶(hù)交互和區(qū)域響應(yīng)
    E、使用axlFormClose關(guān)閉界面窗口
   
    /*
        功能:通過(guò)選擇界面列表框中的器件名稱(chēng)瀏覽器件
        命令:OverviewComps
    */
   
    ;注冊(cè)命令
    axlCmdRegister("OverviewComps"  'TestFormAppMainModule)
   
    ;創(chuàng)建界面文件并顯示界面(主模塊)
    procedure( TestFormAppMainModule()
    prog( (FileName  FilePort)
        ;寫(xiě)文件生成界面文件
        FileName = "TestForm.form"
        FilePort = outfile(FileName  "w")
               
        fprintf(FilePort  "FILE_TYPE=FORM_DEFN VERSION=2\n")
        fprintf(FilePort  "FORM\n")
        fprintf(FilePort  "FIXED\n")
        fprintf(FilePort  "PORT 26 20\n\n")
        
        fprintf(FilePort  "HEADER \"FORM TEST...\"\n\n")
        
        fprintf(FilePort  "TILE\n\n")
        
        fprintf(FilePort  "TEXT \"ComponentList:\"\n\n")
        fprintf(FilePort  "TLOC 1 1\n")
        fprintf(FilePort  "FSIZE 25 3\n")
        fprintf(FilePort  "ENDTEXT\n\n")
        
        fprintf(FilePort  "FIELD ComponentList\n")
        fprintf(FilePort  "FLOC 1 3\n")
        fprintf(FilePort  "LIST \"\" 24 16\n")
        fprintf(FilePort  "OPTION sort\n")
        fprintf(FilePort  "ENDFIELD\n\n")
        
        fprintf(FilePort  "FIELD Quit\n")
        fprintf(FilePort  "FLOC 9 33\n")
        fprintf(FilePort  "MENUBUTTON \"EXIT\" 10 3\n")
        fprintf(FilePort  "ENDFIELD\n\n")
        
        fprintf(FilePort  "ENDTILE\n\n")
        
        fprintf(FilePort  "ENDFORM\n\n")
        
        close(FilePort)
        
        ;創(chuàng)建界面句柄,刪除界面文件(卸磨殺驢...)
        fw = axlFormCreate(gensym()  FileName  '("E"  "OUTER")  'TestFormAppCallBack  t)
        deleteFile(FileName)
        
        ;界面區(qū)域初始化
        TestFormFieldInit(fw)
        
        ;顯示界面
        axlFormDisplay(fw)
        
        return(t)
        
    ))
   
    ;界面區(qū)域初始化
    procedure( TestFormFieldInit(fw)
    prog( (CompsNameList)
        ;獲取所有的器件名稱(chēng)
        CompsNameList = axlDBGetDesign()->components~>name
        
        ;設(shè)置器件列表區(qū)域
        axlFormSetField(fw  "ComponentList"  CompsNameList)
        
        return(t)
    ))
   
    ;界面區(qū)域響應(yīng)回調(diào)函數(shù)
    procedure( TestFormAppCallBack(fw)
    prog( (CompName  CompId)
        case(fw->curField
            ("ComponentList"
                CompName = fw->curValue
                CompId = axlSelectByName("COMPONENT"  CompName)
               
                ;定位到對(duì)象
                axlZoomToDbid(CompId  t)
               
                ;顯示對(duì)象詳細(xì)信息
                axlShowObject(CompId)
            )
            
            ("Quit"
                ;清理現(xiàn)場(chǎng)
                axlClearSelSet()
                axlSetFindFilter(?enabled "NOALL"  ?onButtons "NOALL")
               
                axlFormClose(fw)
            )
        )  
        
        return(t)
        
    ))
   
5、參考文檔
    %CDSROOT%\doc
   
    例子:
    D:\DesignAdvance\Cadence\SPB_15.2\doc
   
    參考手冊(cè)列表:
    algroskill          AXL接口函數(shù)參考手冊(cè)
   
    Tips:
        看看下面的路徑下是什么東西,保證樂(lè)死你... ...
        %CDSROOT%\share\pcb\example\skill
        
6、課后習(xí)題
    搞懂%CDSROOT%\share\pcb\example\skill路徑下所有的程序代碼,然后恭喜你入門(mén)了... ...

支持(0中立(0反對(duì)(0單帖管理 | 引用 | 回復(fù) 回到頂部

返回版面帖子列表

Cadence Allegro SKILL語(yǔ)言








簽名
主站蜘蛛池模板: 国产成人亚洲精品77 | 国产免费久久精品 | 日韩美女一区二区三区 | 97人摸人人澡人人人超一碰 | 不卡无毒免费毛片视频观看 | 伊人国产在线视频 | 69国产成人综合久久精品91 | 亚洲精品国产第一区二区三区 | 热99re久久精品这里都是免费 | 欧美性久久久久 | 国产三级在线观看播放 | 外国成人网在线观看免费视频 | 亚洲一级毛片免观看 | 乱人伦中文视频在线观看免费 | 熟女毛片 | 国产精品免费一区二区区 | 国产日产欧产精品精品推荐在线 | 成人国产精品视频 | 免费a级片网站 | 久久久日本久久久久123 | 亚洲精品视频免费观看 | 九九热精 | 久草久草 | 久久国产视屏 | 久久久日韩精品国产成人 | 一级特色黄大片 | 亚洲国产成人久久综合一区 | 国产午夜毛片v一区二区三区 | 久久久久久久99精品免费 | 久9青青cao精品视频在线 | 国产成人99精品免费观看 | 欧美亚洲一区二区三区 | 成人欧美一区二区三区视频 | 三级网址在线观看 | 欧美一级人与动毛片免费播放 | 国产成人精品本亚洲 | 国产亚洲精品精品国产亚洲综合 | www.黄色片| 日韩视频专区 | 在线a亚洲视频播放在线观看 | 美女一级视频 |