- UID
 - 15750
 
- 积分
 - 69
 
- 精华
 
- 贡献
 -  
 
- 威望
 -  
 
- 活跃度
 -  
 
- D豆
 -  
 
- 在线时间
 -  小时
 
- 注册时间
 - 2002-11-17
 
- 最后登录
 - 1970-1-1
 
 
 
 
 
 
 | 
 
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册 
 
 
 
 
×
 
ARX教程示例!内有本人添加的注释:下面为教程的部分代码! 
#include <aced.h> 
#include <rxregsvc.h> 
 
void initApp(void); 
void unloadApp(void); 
 
 
void helloWorld(void); 
 
void initApp(void) 
{ 
    // 注册AutoCAD命令 
    acedRegCmds->addCommand("HELLOWORLD_COMMANDS",//命令组名 
                            "Hello",//全局命令名 
                            "Bonjour",//本地命令名 
                            ACRX_CMD_MODAL,//命令模式 
                            helloWorld);//命令名对应函数 
 
        acutPrintf("%s%s", "Inside InitApp - ", "Registering commands with acedRegCmds\n"); 
        acutPrintf("Enter \"HELLO\" at the command prompt to execute.\n"); 
} 
 
void unloadApp(void) 
{ 
    acedRegCmds->removeGroup("HELLOWORLD_COMMANDS");//卸载arx程序 
        acutPrintf("%s%s", "Goodbye\n", "Removing command group \"HELLO_COMMANDS\"\n"); 
} 
 
void helloWorld(void) 
{ 
    acutPrintf("\nHello World!"); 
} 
///定义入口函数acrxEntryPoint 
extern "C"/* 说明为外部函数*/ AcRx::AppRetCode /*定义返回类型*/ 
acrxEntryPoint(AcRx::AppMsgCode msg/*arx消息*/, void* pkt) 
{ 
    switch (msg)  
            { 
                case AcRx::kInitAppMsg://初始化消息,程序加载时发送给应用程序 
                     acrxDynamicLinker->unlockApplication(pkt);//使arx程序可以卸载 
                     acrxRegisterAppMDIAware(pkt);//支持MDI,AutoCAD为MDI程序 
                     initApp();//初始化函数 
                     break; 
                case AcRx::kUnloadAppMsg://程序卸载消息,当arx程序卸载是发送给应用程序 
                     unloadApp();//卸载函数 
                     break; 
                case AcRx::kLoadDwgMsg://当打开新dwg图形文件是发送 
                        acutPrintf("Received Acrx::kLoadDwgMsg\n");//在命令行中显示信息 
                        break; 
                default: 
                     break; 
    } 
    return AcRx::kRetOK; 
} |   
 
 
 
 |