MFC中怎么使用自定义控件?

时间:2021-04-03 08:59:48
比如我用CButton派生另一个类CMyButton,重载一些函数,然后该怎么才能像使用默认控件那样是用呢?就是从控件条上直接拉到框架上使用那样。不要从代码直接生成,那样还要自己处理布局的问题。

5 个解决方案

#1


CFormView类,在创建工程时,在引导创建过程的最后,把CView类改为CFormView类,就可以了,直接用的对话框来做视窗口的。

#2


晕,错了!

#3


把函数直接写在类中就可以了

#4


我觉得不能那样
如果按你说得那样
那你必须重写一个控件
然后添加进去
比较麻烦
如果用类直接处理应该还简单些
www.xizi123.cn

#5


资源编辑器里你照样拖,在头文件里包含你的CMyButton.h头文件,用你自己的类定义一个成员变量,并在实现文件中将这个变量和资源中的ID对应起来

以CButtonST为例 

在.h中包含CButtonST类头文件,并定义一个成员变量
CButtonST   m_btnTest;

在.CPP文件中将成员变量和资源中的控件关联

void CXXXDlg::DoDataExchange(CDataExchange* pDX)
{
    CDialog::DoDataExchange(pDX);
    DDX_Control(pDX, IDC_BTN_TEST, m_btnTest);
}

#1


CFormView类,在创建工程时,在引导创建过程的最后,把CView类改为CFormView类,就可以了,直接用的对话框来做视窗口的。

#2


晕,错了!

#3


把函数直接写在类中就可以了

#4


我觉得不能那样
如果按你说得那样
那你必须重写一个控件
然后添加进去
比较麻烦
如果用类直接处理应该还简单些
www.xizi123.cn

#5


资源编辑器里你照样拖,在头文件里包含你的CMyButton.h头文件,用你自己的类定义一个成员变量,并在实现文件中将这个变量和资源中的ID对应起来

以CButtonST为例 

在.h中包含CButtonST类头文件,并定义一个成员变量
CButtonST   m_btnTest;

在.CPP文件中将成员变量和资源中的控件关联

void CXXXDlg::DoDataExchange(CDataExchange* pDX)
{
    CDialog::DoDataExchange(pDX);
    DDX_Control(pDX, IDC_BTN_TEST, m_btnTest);
}