MFC无法添加控件变量

    最近在做基于HTML通信的MFC程序的时候,发现创建的基于Html的对话框或者单文档程序,无法为控件添加变量,原因应该在于在创建对话框或文档类程序的时候选择了基于Html的程序导致的,可能是VS安装不完全的问题(至于重装VS是否能解决此问题,我并未尝试),网上所说的删除ncb文件只适用于VS2008以前的版本,VS2010以后程序并没有生成ncb文件,我采用一种有局限性的方法进行解决。

解决方法:

    1.在对应的头文件,类定义里面添加变量,如:CString m_test

    2.在构造函数中初始化变量(不需要初始化的控件变量可以忽略此步),如

CWebBrowser_TestDlg::CWebBrowser_TestDlg(CWnd* pParent /*=NULL*/)
	: CDHtmlDialog(CWebBrowser_TestDlg::IDD, CWebBrowser_TestDlg::IDH, pParent)
	,m_test("aaa")
{
	m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
}
    3.变量与控件绑定,如

void CWebBrowser_TestDlg::DoDataExchange(CDataExchange* pDX)
{
	CDHtmlDialog::DoDataExchange(pDX);
	DDX_Text(pDX,IDD_WEBBROWSER_TEST_DIALOG,m_test);
}

局限性:

    与控件绑定的变量只能是DDX_Text函数中所规定的17种类型,如果用户自定义类型或类则无法使用此方法进行变量与控件的绑定。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值