还在因为使用VC2010自定义对话框,而使界面惨不忍睹吗?那就试试VC2010的新功能,基于对话框的HTML dialog吧!
1.建立HTML Dialog
2.让它支持javascript外部调用函数
//1.在OnInitDialog()中添加: EnableAutomation(); //支持自动化 SetExternalDispatch(GetIDispatch(TRUE));//将浏览器控件的扩展接口设置为对话框自身的IDispatch //2.CFileAssistDlg.h中声明: DECLARE_DISPATCH_MAP() //3.CFileAssistDlg.cpp中添加: BEGIN_DISPATCH_MAP(CFileAssistDlg, CDHtmlDialog) DISP_FUNCTION(CFileAssistDlg, "ConvertData", ConvertData, VT_BSTR, VTS_BSTR) END_DISPATCH_MAP() //4.重载CanAccessExternal()函数 BOOL CFileAssistDlg::CanAccessExternal() { return TRUE; //避免弹出Windows认为不安全的对话框 } //5.建立ConvertData方法: BSTR CFileAssistDlg::ConvertData(LPCSTR kekCode) { returnString = "hello...\n"; BSTR bstrText = returnString.AllocSysString(); return bstrText; } //6.javascript中建立接口函数: function Button1_onclick() { var kekCode = document.getElementById("TextEnc").value; document.getElementById("TextArea1").value = external.ConvertData(kekCode); }
3.效果图
转载请注明出处:http://blog.csdn.net/yxstars/article/details/8476779