CAA创建工具条的方法

一般来说CAA创建工具条需要实现接口中CreateToolbars()方法

可以采用不使用宏命令的方式和使用宏命令的方式实现该方法

//不采用宏命令
CATCmdContainer* CreateToolbars()
{
  std::cout << "Create Toolbar << std::endl;

  //toolbar
  CATCmdContainer *bar = new CATCmdContainer("testToolbar", CATCmdAccess::Default);
  bar->AddView(1, CATCmdContainer::Top);

  // 典型模板可变参数设计
  CATCmdStarter *test1= new CATCmdStarter("icon1", CATCmdAccess::Default);
  test1->SetCommand("icon1hdr");
  bar->SetChild(test1);

  // 工装左右对称编辑
  CATCmdStarter *test2= new CATCmdStarter("icon2", CATCmdAccess::Default);
  test2->SetCommand("icon2hdr");
  test1->SetNext(test2);

  return bar;
}

//采用宏命令
CATCmdContainer* CreateToolbars()
{
    NewAccess(CATCmdContainer,pElectricTlb,ElectricTlb);

    //创建导出xml命令
    NewAccess(CATCmdStarter,pExportXmlCmd,ExportXmlCmd);
    SetAccessCommand(pExportXmlCmd,"ExportXmlCmdHdr");
    SetAccessChild(pElectricTlb,pExportXmlCmd);

    NewAccess(CATCmdStarter,pScheToCATIACmd,ScheToCATIACmd);
    SetAccessCommand(pScheToCATIACmd,"ScheToCATIACmdHdr");
    SetAccessNext(pExportXmlCmd,pScheToCATIACmd);

    //创建关于命令
    NewAccess(CATCmdStarter,pAboutEITCmd,AboutEITCmd);
    SetAccessCommand(pAboutEITCmd,"AboutEITCmdHdr");
    SetAccessNext(pScheToCATIACmd,pAboutEITCmd);

    AddToolbarView(pElectricTlb,1,Right);
    return pElectricTlb;
}
```****
posted @ 2025-08-25 16:54  lianxi528  阅读(7)  评论(0)    收藏  举报