博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【转载】在模态对话框中实现用户和AutoCAD 的交互操作
阅读量:6922 次
发布时间:2019-06-27

本文共 1025 字,大约阅读时间需要 3 分钟。

举例一个在模态对话框中选择点并显示点的功能。

在“选择点”按钮的单击事件中,隐藏对话框,提示用户在图形窗口中选择一个

点,然后重新显示该对话框,其处理函数为:
void CArxDialog::OnButtonPoint()//点击按钮响应函数
{
// 隐藏对话框把控制权交给AutoCAD
BeginEditorCommand();
// 提示用户输入一个点
ads_point pt;
if (acedGetPoint(NULL, "\n输入一个点:", pt) == RTNORM)
{
// 如果点有效,继续执行
CompleteEditorCommand();
m_strXPt.Format("%.2f", pt[X]);//m_strXPt是CEdit控件关联CAcUiNumericEdit类型的变量
m_strYPt.Format("%.2f", pt[Y]);//同上
m_strZPt.Format("%.2f", pt[Z]);//同上
// 显示点的坐标
DisplayPoint();//自定义函数
}
else
{
// 否则取消命令(包括对话框)
CancelEditorCommand();
}
}
BeginEditorCommand 函数用于将控制权(焦点)交给AutoCAD,一般用于开始一个交
互操作;CompleteEditorCommand 函数用于从一个在AutoCAD 中完成的交互命令返回到应用
程序;CancelEditorCommand 函数用于从一个在AutoCAD 中被取消的交互命令返回到应用程
序。这三个函数组合使用,能够在模态对话框中实现用户和AutoCAD 的交互操作。

void CArxDialog::DisplayPoint()

{
// 在对话框中显示点的坐标
m_editXPt.SetWindowText(m_strXPt);
m_editXPt.Convert(); // 更新控件和其关联的成员变量
m_editYPt.SetWindowText(m_strYPt);
m_editYPt.Convert();
m_editZPt.SetWindowText(m_strZPt);
m_editZPt.Convert();
}

转载于:https://www.cnblogs.com/lihao102/archive/2013/04/14/3020279.html

你可能感兴趣的文章
SEO 使用 robots.txt 文件拦截或删除网页
查看>>
Solr 删除索引
查看>>
rm -rf/ 又引发了一个血案
查看>>
我的友情链接
查看>>
docker 安装ElasticSearch(6.x版本)
查看>>
Confluence 6 MySQL 3.x 字符集编码问题
查看>>
HttpUtils
查看>>
HTML-特殊字符
查看>>
Android小白的探索:2D绘图之Android简易版Microsoft Visio学习之路 一、组合模式
查看>>
IBM PVM Study之--IBM PVM技术概述
查看>>
用组策略取消WINDOWS 2003 SERVER的关机原因
查看>>
activemq 使用介绍
查看>>
软件测试中有关界面测试经验总结-51testing
查看>>
34个高质量的扁平化设计资源
查看>>
C# TPL学习(4个程序)
查看>>
App 运营的指标具体都有哪些?(五)
查看>>
https原理及tomcat配置https方法
查看>>
java验证码识别--2
查看>>
RESTEasy hello world example
查看>>
我的友情链接
查看>>