CDHtmlDialog 小结(日文)

来源:互联网 发布:子域名挖掘机 编辑:程序博客网 时间:2024/05/21 20:26

結構ハマりましたが、こんな感じでいけるみたいです。

BEGIN_DHTML_EVENT_MAP(CMyApplication)
DHTML_EVENT_ONCLICK(_T("MyButton"),OnMyButtonClick) ←ボタンのハンドラを登録
END_DHTML_EVENT_MAP()

 

HRESULT CMakeCardDlg::OnMyButtonClick(IHTMLElement *pElement) ← ハンドラ本体
{
CString str=_T("ボタンが押されました");
BSTR bstr;
bstr=str.AllocSysString();

SetElementText(L"MyInput",bstr);
 return 0;
}

 

void CMakeCardDlg::DoDataExchange(CDataExchange* pDX)
{
CDHtmlDialog::DoDataExchange(pDX);
 DDX_DHtml_ElementText(pDX,_T("MyInput"),DISPID_A_VALUE,m_MyInput_str); ←これがポイント
}

 

あとは、次のようなHTMLを用意すれば、OK

<div class="btn">
<input type="button" id="MyButton" value="ボタン" />
<input type="text" id="MyInput" />
</div>
0 0