如何在ObjectARX中使用MFC

2025-05-08 12:39:25
推荐回答(1个)
回答1:

  步骤一:
新建基于MFC的ObjectArx项目,
打开资源视图添加一个对话框ID修改为IDD_ARX_MODAL
(右击资源视图中的对话框打开属性面板,可以修改ID)

  设计如图界面,ID如下:
IDC_BUTTON_POINT
  IDC_BUTTON_ANGLE
  IDC_EDIT_XPT
  IDC_EDIT_YPT
  IDC_EDIT_ZPT
  IDC_EDIT_ANGLE

  选择两个Button把Owner Draw设置为True
  完成界面。
  
  步骤二:
打开类视图,右击项目->添加类(这里不是右击对话框添加类)

这张图有点小错误,这里Dialog ID:IDD_ARX_MODAL Class name:CArxDialog
  在类视图中右击CArxDialog类添加变量

这样会在头文件中生成

源文件中生成

根据这个规律添加其他变量
  大气象 private:
CAcUiPickButton m_btnAngle;
CAcUiPickButton m_btnPoint;
CAcUiNumericEdit m_editXpt;
CAcUiNumericEdit m_editYpt;
CAcUiNumericEdit m_editZpt;
CAcUiAngleEdit m_editAngle;
void CArxDialog::DoDataExchange (CDataExchange *pDX) {
CAcUiDialog::DoDataExchange (pDX) ;

DDX_Control(pDX, IDC_BUTTON_ANGLE, m_btnAngle);
DDX_Control(pDX, IDC_BUTTON_POINT, m_btnPoint);
DDX_Control(pDX, IDC_EDIT_XPT, m_editXpt);
DDX_Control(pDX, IDC_EDIT_YPT, m_editYpt);
DDX_Control(pDX, IDC_EDIT_ZPT, m_editZpt);
DDX_Control(pDX, IDC_EDIT_ANGLE, m_editAngle);
}
  
  
  步骤三:
  为CArxDialog添加InitDialog消息响应。
  方法是打开类视图,右击->属性

  再添加OnClose()响应函数
  在头文件中添加几个变量
  public:
  CString m_strAngle;
  CString m_strZPt;
  CString m_strYPt;
  CString m_strXPt;
  在头文件中定义两函数
void DisplayPoint();
  void DisplayAngle();
  分别为两个按钮添加单击事件,为四个编辑框添加失去焦点事件。
  
  步骤四:
  打开acrxEntryPoint.cpp添加#include “ArxDialog.h”