设置 DCL 对话框需要使用多个需要按特定顺序调用的 AutoLISP 函数。
下面概述了显示和使用 DCL 对话框时需要遵循的典型顺序:
- 使用调用加载 DCL 文件。load_dialog
- 调用以显示特定对话框。new_dialog
请务必检查返回的值。呼叫失败时可能会产生不可预知的结果。new_dialogstart_dialognew_dialog
- 通过设置磁贴值、列表和图像来初始化对话框。在调用以设置操作表达式或回调函数时也进行初始化。此时通常调用的其他函数是 andfor 常规磁贴值和状态,,,和 for 列表框,以及维度函数 with,,,, 和 for 图像。此时,还可以调用以将特定于应用程序的数据与对话框及其组件相关联。action_tileset_tilemode_tilestart_listadd_listend_liststart_imagevector_imagefill_imageslide_imageend_imageclient_data_tile
- 调用将控制权转到对话框,以便用户可以输入。start_dialog
- 从操作(回调)中处理用户输入。在您最有可能使用时处理输入,,, 和。用户按下退出按钮,导致调用操作,从而导致返回值。此时,通过调用卸载 DCL 文件。get_tileget_attrset_tilemode_tiledone_dialogstart_dialogunload_dialog
此方案一次仅处理一个对话框和一个 DCL 文件。应用程序通常有多个对话框。处理这些对话框的最简单、最快捷的方法是将它们全部保存在单个 DCL 文件中。然后,Thecall 一次加载所有对话框,您可以调用任何对话框。但是,如果内存有限,则可能需要创建多个 DCL 文件,并在加载一组对话框之前用于从内存中删除一组对话框。load_dialognew_dialogunload_dialog
注意:Mac OS 上的 DCL 使用比 Windows 上更多的内存,卸载不需要的 DCL 文件定义以避免内存不足。
|