CAD二次开发学习笔记二(创建一个对话框)
打开资源视图->右击->添加资源->Dialog
双击对话框,弹出MFC类向导,输入类名FirstClass,
确定,创建对话框类。FirstClass.h与FirstClass.cpp
需要在FirstClass.h中包含#include "Resource.h"
代码如下:
大气象
#pragma once
// FirstClass 对话框
#include "Resource.h"//这里包含资源头文件
class FirstClass : public CDialog
{
DECLARE_DYNAMIC(FirstClass)
public:
FirstClass(CWnd* pParent = NULL); // 标准构造函数
virtual ~FirstClass();
// 对话框数据
enum { IDD = IDD_DIALOG1 };
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持
DECLARE_MESSAGE_MAP()
};
// FirstClass 对话框
#include "Resource.h"//这里包含资源头文件
class FirstClass : public CDialog
{
DECLARE_DYNAMIC(FirstClass)
public:
FirstClass(CWnd* pParent = NULL); // 标准构造函数
virtual ~FirstClass();
// 对话框数据
enum { IDD = IDD_DIALOG1 };
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持
DECLARE_MESSAGE_MAP()
};
新建一个cad命令,在acrxEntryPoint.cpp添加如下代码:
大气象
static void ArxProject2cmd2(void)
{
// Add your code for command ArxProject2.cmd2 here
/*cad维护的有自己的资源空间,我们添加对话框的时候,
使用的是自己的资源空间,这个相当于通知cad准备下可能要开新的资源空间。
这两个混一块一般没问题,但是如果出问题,就非常难找了,
所以一般在命令中直接调用对话框中时,都要加上。
*/
CAcModuleResourceOverride myResources;
FirstClass Dlg;
Dlg.DoModal();
}
{
// Add your code for command ArxProject2.cmd2 here
/*cad维护的有自己的资源空间,我们添加对话框的时候,
使用的是自己的资源空间,这个相当于通知cad准备下可能要开新的资源空间。
这两个混一块一般没问题,但是如果出问题,就非常难找了,
所以一般在命令中直接调用对话框中时,都要加上。
*/
CAcModuleResourceOverride myResources;
FirstClass Dlg;
Dlg.DoModal();
}
记得包含对话框头文件#include "FirstClass.h"
然后ap加载cmd2运行
我这个博客废弃不用了,今天想寻找外链的时候,突然想到这个博客权重很高。
有需要免费外链的,留言即可,我准备把这个博客变成免费的友情链接站点。