在线等,boss追命,各位大侠帮忙!
简化说下问题:VC.net2005环境,建立一个基于HTML对话框的程序。
程序中添加2个html页面,html页面一中包含一个文本输入框,id = text1;一个按钮 id = button1;html页面二中只包含一个文本输入框,id = text2。
现在在dlg.h文件中加入2个变量, int m_T1;int m_T2(初始化已做); 以及按钮相应函数 HRESULT OnButton1(IHTMLElement *pElement);
在dlg.cpp文件中加入数据交换DDX:
DDX_DHtml_ElementText(pDX,_T("Text1"),DISPID_A_VALUE ,m_T1);
DDX_DHtml_ElementText(pDX,_T("Text2"),DISPID_A_VALUE ,m_T2);
接着加入OnButton1函数代码。如下:
HRESULT CDlg::OnButton1(IHTMLElement* /*pElement*/)
{
UpdateData(true);
Navigate(_T"html2")
return S_OK;
}
即在html1页面完成数据输入后,进行数据交换,并跳转到html2页面。
编译通过,可运行。
问题是:当点击button时,页面1中的TextField能够进行正确的数据交换,系统弹出对话框,提示 “请输入一个整数”,UpdateData(true);语句返回值=0,执行失败。
跟踪程序,原因是第二个页面中的TextField无易做图确的和变量int m_T2进行数据交换。
请问如何解决? --------------------编程问答-------------------- 我们的时间也是很宝贵的,不要在标题里面用你的唠叨浪费我们的时间。 --------------------编程问答-------------------- 难道楼上就是那个BOSS? --------------------编程问答-------------------- 我无意浪费您的时间,只是想问问题! --------------------编程问答-------------------- 其实这个问题就是,在使用Html Dlalog时候,如果程序包含不止一个html页面,如何对每个页面中的元素进行数据交换,使用DDX技术。
难道是为每个页面添加一个class?
怎么没有大侠帮忙啊?
急 --------------------编程问答-------------------- 问题已经解决,用 CMultiPageDhtmlDialog类。
但是出现了一个新问题,如和处理页面上的超链接,点击超链接虽然可以进入相应页面,但是新页面并不触发任何数据交换!EGIN_DHTML_URL_EVENT_MAP()宏不起作用了?不知道有大侠知道不? --------------------编程问答-------------------- up --------------------编程问答-------------------- up
补充:.NET技术 , VC.NET