|
void MyExam07Dlg::OnButtonAngle()
{
BeginEditorCommand();
ads_point pt;
acdbDisToF(m_strXPt, -1, &pt[X]);
acdbDisToF(m_strYPt, -1, &pt[Y]);
acdbDisToF(m_strZPt, -1, &pt[Z]);
double angle;
if (acedGetAngle(pt, "\nPick an angle: ", &angle) == RTNORM) {
CompleteEditorCommand();
m_strAngle.Format("%g", angle*(180.0/PI));
DisplayAngle();
}
else
{
CancelEditorCommand();
}
}
有时我们需要点击对话框上的一个按钮的时候,对话框隐藏起来,然后执行完某个操作后,对话框又弹出来,
这时我们可以使用BeginEditorCommand()和CompleteEditorCommand()函数来完成,前者是告诉程序,要
进行用户交互操作了,此时对话框将被隐藏起来,然后知道程序运行到CompleteEditorCommand()函数,这时
交互操作完成,对话框弹出。如果要中途取消交互操作可以使用CancelEditorCommand()函数来提前退出交互,
弹出对话框。
注:这两个函数都是在CAcUiDialog类中,所有要使用这两个函数,必须让对话框类继承这个类,同时要注意,如
果对话框类继承了这个类,那么我们将不能使用点击鼠标右键来添加变量绑定控件了,只能使用手动的方式来绑定。 |
|