在MFC用html做界面,,怎样能用html的链接调用c++函数

在MFC用html做界面,,怎样能用html的链接调用c++函数,第1张

如果你是利用 CHtmlView 的话,在 html 里利用javascript做页面跳转,然后htmlview的beforenavigate 事件里截获链接,然后处理即可,因为链接你可以自定义,所以页面的参数可以通过连接传进来。

这是一段类似的代码可以参考

void CIEView::OnBeforeNavigate2(LPCTSTR lpszURL, DWORD nFlags, LPCTSTR lpszTargetFrameName, CByteArray&baPostedData, LPCTSTR lpszHeaders, BOOL* pbCancel)

{

    // TODO: Add your specialized code here and/or call the base class

    CMainFrame* pfrm=(CMainFrame*)AfxGetMainWnd()

                 

    CString strURL,strURL2

    strURL=lpszURL

                 

    strURL.MakeLower()

    if(strURL.Left(4)!="http" &&strURL.Left(3)!="ftp")

    {

        if(strURL.Left(8)=="email://")

        {

            *pbCancel=TRUE

            ProcessEmail(strURL)

            return

        }

        if(strURL.Left(9)=="search://")

        {

            *pbCancel=TRUE

            ProcessSearch(strURL)

            return

        }

                     

        strURL=pfrm->GetRealURL(strURL)

        pfrm->AddToHistory(strURL)

    }

                 

    CHtmlView::OnBeforeNavigate2(lpszURL, nFlags,lpszTargetFrameName, baPostedData, lpszHeaders, pbCancel)

}

你不会用 str="http:://www." 然后str2="qq.com"

ShellExecute(NULL,NULL,str+str2,SHOWNORMAL)这样就好了啊

修改窗口风格

long style

style&=~(WS_MAXIMIZE)

SetWindowLong(this->m_hWnd,GWL_STYLE,style)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7356571.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-04
下一篇 2023-04-04

发表评论

登录后才能评论

评论列表(0条)

保存