正在阅读:VC7 HTML Dialog开发实例讲解VC7 HTML Dialog开发实例讲解

2004-04-05 10:08 出处:VChelp 作者:闻怡洋 责任编辑:sdq

  设置innerText和innerHTML属性

  DDX_DHtml_ElementInnerText(
     CDataExchange* dx,
     LPCTSTR name,
     CString& var
     )
  和
   DDX_DHtml_ElementInnerHtml(
     CDataExchange* dx,
     LPCTSTR name,
     CString& var
  )
  相当与前面提到的设置和获取innerText,innerHTML属性。

  获取和设置控件中的值

  在DHTML中利用“对象名程.value”可以得到控件中输入的值,利用DDX也同样可以得到。
  
  DDX_DHtml_ElementValue(
     CDataExchange* dx,
     LPCTSTR name,
     var
  )
  用于在控件和对象之间交换数据。

  使用方法

  假设HTML文件中代码如下

  <p id="p4"><b>p4 for ddx</b></p>
  <input type="text" ID="input1" size="20" value="input1 for ddx" NAME="input1">
  <input type="text" ID="input2" size="20" value="101" NAME="input2">

  在H文件中添加变量定义:
  public: //DDX
   CString m_szP4,m_szInput1;
   int m_iInput2;

  在类的构造函数中赋初值:
  CmydhtmlDlg::CmydhtmlDlg(CWnd* pParent /*=NULL*/)
   : CDHtmlDialog(CmydhtmlDlg::IDD, CmydhtmlDlg::IDH, pParent)
   {
    m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
    m_szP4 = "test for p4";
    m_szInput1= "test for input1";
    m_iInput2 = 101;
   }

  在CPP文件中的void CmydhtmlDlg::DoDataExchange(CDataExchange* pDX)函数中添加代码:
  void CmydhtmlDlg::DoDataExchange(CDataExchange* pDX)
  {
   CDHtmlDialog::DoDataExchange(pDX);
   //// for html ddx
   DDX_DHtml_ElementInnerHtml(pDX,"p4",m_szP4); //对应 p4
   DDX_DHtml_ElementValue(pDX,"input1",m_szInput1); //对应 input1
   DDX_DHtml_ElementValue(pDX,"input2",m_iInput2); //对应 input2
  }
  使用是与CDialog一样利用UpdateData。
  HRESULT CmydhtmlDlg::OnButtonTest4(IHTMLElement* /*pElement*/)
  {
   UpdateData();
   TRACE("p4=%s\n",m_szP4);
   CString szTemp=m_szP4;
   m_szP4 =m_szInput1;
   m_szInput1=szTemp; //对换p4和input1中内容
   m_iInput2 ++; //将input2中数字加一
   UpdateData(FALSE);
   return S_OK;
  }

察看评论详细内容 我要发表评论
作者笔名简短内容 发表时间
:

键盘也能翻页,试试“← →”键

相关文章

关注我们

最新资讯离线随时看 聊天吐槽赢奖品