ObjectARX 应用程序在获得控制权时必须进行的关键调用是找出当前文档,这可以通过该函数完成。acDocManager->curDocument() 注意:当前文档并不总是活动文档。在过渡状态期间就是这种情况,例如当反应堆发生时。不要在过渡状态期间尝试大量处理。如果您对活动文档感兴趣,请考虑使用。documentToBeActivated()mdiActiveDocument()
从当前文档中,可以确定当前数据库、相关事务管理器和应用程序的关联文档特定状态,然后在返回之前执行需要执行的任何操作。 命令在其堆栈上存储当前文档和相关信息后,在完成之前不需要再次查询当前文档。每当提示用户输入时,用户都可以切换文档,但如果这样做,则当前命令将挂起并保存其堆栈状态,直到重新激活文档。 如果应用程序从应用程序执行上下文中运行,则必须锁定和解锁当前文档以修改与其关联的任何内容。它可以通过直接调用 theandmember 函数来做到这一点。AcApDocManager::lockDocument()unlockDocument() 如果应用程序从 ObjectARX 或 AutoLISP 函数运行,则不需要锁定,因为系统会在命令和 AutoLISP 表达式周围建立锁并自动删除它们。 |
|Archiver|CAD开发者社区 ( 苏ICP备2022047690号-1 苏公网安备32011402011833)
GMT+8, 2025-1-8 19:22
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.