天气与日历 切换到窄版

 找回密码
 立即注册
中国膜结构网
十大进口膜材评选 十大国产膜材评选 十大膜结构设计评选 十大膜结构公司评选
查看: 85|回复: 0

Arx响应双击事件

[复制链接]

该用户从未签到

主题

0

回帖

2912

积分

管理员

积分
2912
发表于 2024-6-22 09:46:18 | 显示全部楼层 |阅读模式
#include "stdafx.h"
#include "DoubleClickWinsill.h"
#include "tyWinsillCom.h"

CDoubleClickWinsill::CDoubleClickWinsill(void)
{
}


CDoubleClickWinsill::~CDoubleClickWinsill(void)
{
}

void CDoubleClickWinsill::startEdit(AcDbEntity *pEnt, AcGePoint3d pt)
{
        //acutPrintf(_T("123\n"));
        if(pEnt->isKindOf(tyWinsillCom::desc()))
        {
                tyWinsillCom* pWinsill = tyWinsillCom::cast(pEnt);
                //获取当前文档
                AcApDocument *pDoc = acDocManager->curDocument();
                //锁文档
                acDocManager->lockDocument(pDoc);
                //升级为可写
                pWinsill->upgradeOpen();

                pWinsill->setDir(pWinsill->getDir() * (-1));
                pWinsill->close();
                pWinsill->draw(); //在关闭之后还能使用

                //解锁文档
                acDocManager->unlockDocument(pDoc);
                //清理PickFirst选择集中的内容
                acedSSSetFirst(NULL, NULL);
        }
}

void CDoubleClickWinsill::finishEdit(void)
{

}



然后在acrxEntryPoint.cpp中 添加
virtual AcRx::AppRetCode On_kInitAppMsg (void *pkt) {
                // TODO: Load dependencies here

                // You *must* call On_kInitAppMsg here
                AcRx::AppRetCode retCode =AcRxArxApp::On_kInitAppMsg (pkt) ;
               
                // TODO: Add your initialization code here
                //为tyWinsillCom类添加协议扩展
                CDoubleClickWinsill *pWinsillEdit = new CDoubleClickWinsill;
                tyWinsillCom::desc()->addX(AcDbDoubleClickEdit::desc(), pWinsillEdit);

                return (retCode) ;
        }

        virtual AcRx::AppRetCode On_kUnloadAppMsg (void *pkt) {
                // TODO: Add your code here

                // You *must* call On_kUnloadAppMsg here
                AcRx::AppRetCode retCode =AcRxArxApp::On_kUnloadAppMsg (pkt) ;

                // TODO: Unload dependencies here
                //删除tyWinsillCom类的协议扩展
                tyWinsillCom::desc()->delX(AcDbDoubleClickEdit::desc());

                return (retCode) ;
        }

 

 

 

 

Arx响应双击事件
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|中国膜结构网|中国膜结构协会|进口膜材|国产膜材|ETFE|PVDF|PTFE|设计|施工|安装|车棚|看台|污水池|中国膜结构网_中国空间膜结构协会

GMT+8, 2024-11-1 11:39 , Processed in 0.124368 second(s), 27 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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