CAD开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

AutoCAD 2021 开发者帮助

其他应用程序执行上下文注意事项

2024-5-18 18:38| 发布者: admin| 查看: 149| 评论: 0|原作者: admin|来自: AutoCAD

其他应用程序执行上下文注意事项

还有一些功能和限制适用于在应用程序执行上下文中执行的代码。

  • 当代码运行的执行上下文未隐含在代码结构中时,可以进行以下查询以查找它是否是应用程序执行上下文:
virtual bool
AcApDocManager::isApplicationContext() const = 0;
  • 可以使用所有 ActiveX 用户输入成员,但请确保在与活动文档和当前文档关联的实用程序对象上调用它们。如上所述,当在此上下文中获取用户输入时,文档切换将被禁用。您可以通过调用获取当前对应的实例:IAcadDocument*AcApDocument
acDocManager()->curDocument()->cDoc()->GetIDispatch(
    BOOL bAddRef);
  • 可以调用所有 ObjectARX 用户输入函数,并隐式使用当前活动文档。如上所述,当在此上下文中获取用户输入时,文档切换将被禁用。
  • 从应用程序上下文执行的应用程序代码可以使用以下成员函数根据需要一起或单独切换当前文档和活动文档。
virtual Acad::ErrorStatus 
setCurDocument(
    AcApDocument* pDoc,
    AcAp::DocLockMode = AcAp::kNone,
    bool activate = false) = 0;
  • 通过在提示用户输入和更改或激活当前文档之间交替进行,可以从单个执行上下文和单个代码序列提示来自多个文档的输入。缺点是,在提示输入时,用户的文档切换被禁用,因此代码需要知道要切换到哪个文档。
  • 当活动文档和当前文档不同时,请注意 ActiveX 和 ObjectARX 用户输入函数将无法正常运行。使用 和 函数检查当前文档和活动文档。curDocument()mdiActiveDocument()
  • 如果应用程序离开时当前文档和活动文档不同,则下一个输入事件会将当前文档还原回活动文档。
  • 当使用 ActiveX 用户输入函数提示用户输入从应用程序上下文执行的代码时,将禁用自动交互式文档切换,但可以执行当前文档切换。

路过

雷人

握手

鲜花

鸡蛋

最新评论

QQ|Archiver|CAD开发者社区 ( 苏ICP备2022047690号-1   苏公网安备32011402011833)

GMT+8, 2025-3-5 17:59

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部