找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 580|回复: 3

[求助]:求助。为何不能对实体进行修改?

[复制链接]
发表于 2004-8-26 20:35:11 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
int        SetTextData(ads_name ent1,ads_name ent2,BOOL bangle=TRUE,BOOL bheight=TRUE,BOOL bstring=FALSE)
{
        struct        resbuf        *eb=NULL;
        eb=acdbEntGet(ent1);
        ads_real        angle,height,scale;
        char        string[20];
        if(GetTextData(ent1,&angle,&height,&scale,string)!=RTNORM)
        {
                acedAlert("\n获取实体1数据失败");
                return        RTERROR;
        }
        else
        {
                struct        resbuf        *ed=NULL,*cb=NULL;
                ed=acdbEntGet(ent2);
                ads_real        angle1,height1,scale1;
                char        string1[20];
                if(GetTextData(ent2,&angle1,&height1,&scale1,string1)!=RTNORM)
                {
                        acedAlert("\n获取实体2数据失败");
                        return        RTERROR;
                }
                for(cb=ed;cb!=NULL;cb=cb->rbnext)//??????????????????????????????
                {
                        if(cb->restype==0)
                        {
                                if (strcmp(cb->resval.rstring,"TEXT")!=0)
                                {
                                        acedAlert("\n实体数据有错");
                                        acutRelRb(ed);
                                        return RTERROR;
                                }
                                else
                                        acedAlert("\n实体数据正确");
                        }
                        if(m_BHeight&&cb->restype==40)//字体高度
                        {
                                cb->resval.rreal=height;
                                acedAlert("\n修改实体高度成功");
                        }
                        else
                                acedAlert("\n修改实体高度失败");
                        if(m_BAngle&&cb->restype==50)//字体角度
                        {
                                cb->resval.rreal=angle;
                                acedAlert("\n修改实体角度成功");
                        }
                        else
                                acedAlert("\n修改实体角度失败");
                        /*if (bstring==TRUE&&cb->restype==8)//字体角
                        {
                                if(strlen(cb->resval.rstring)<(strlen(string)))
                                {
                                        cb->resval.rstring=realloc(cb->resval.rstring,strlen(string)+1);
                                }
                        }*/
                        if (acdbEntMod(ed)!=RTNORM)
                        {
                                acutRelRb(ed);
                                return        RTERROR;
                        }
                        break;
                }
                acutRelRb(ed);
        }
        acutRelRb(eb);
        return        RTNORM;
}
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2004-8-26 21:06:52 | 显示全部楼层
我也碰到和这个相关的问题了,在VC6+arx2002环境下,为什么OpenObject()一开始是返回eOK,过了几天老是返回eNUllObjectID啊,就是实体不让打开了,郁闷~~
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-8-27 11:46:04 | 显示全部楼层
acdbOpenAcDbEntity
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2004-8-31 13:02:01 | 显示全部楼层
刚用了Debug跟踪才知道问题,是循环出错了,看来Debug还是蛮实用的,
初学,不要见笑
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-11-16 00:48 , Processed in 0.368604 second(s), 37 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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