学卫网教程:是一个免费提供流行杀毒软件教程、在线学习分享的学习平台!

金山卫士开源软件之旅(二) 容易指南:怎么创建1个基于金山卫士界面库的工程-程序设计

SWP_NOZORDER); 
        } 
 
        if (bEnableParent) 
        { 
            ::EnableWindow(hWndParent, TRUE); 
        } 
 
        if (hWndParent != NULL && ::GetActiveWindow() == m_hWnd) 
            ::SetActiveWindow(hWndParent); 
 
        BkWinManager::SetActive(hWndLastActive); 
 
        if ( IsWindow() ) 
            DestroyWindow(); 
 
        return m_uRetCode; 
    } 
 
    void OnClose() 
    { 
        SendMessage(WM_COMMAND, MAKELONG(IDCANCEL, 0), NULL); 
    } 
 
    void EndDialog(UINT uRetCode) 
    { 
        m_uRetCode = uRetCode; 
 
        m_bExitModalLoop = TRUE; 
 
        // DestroyWindow里面直接Send了WM_DESTROY,所以不会跑到DoModal的消息循环里,所以有了下面那行代码 
        // DestroyWindow(); 
 
        // 这句非常重要,可以让DoModal消息循环再跑一次,防止卡死在GetMessage,泪奔~~~~~~~ 
        ::PostThreadMessage(::GetCurrentThreadId(), WM_NULL, 0, 0); 
    } 
 
    void OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags) 
    { 
        if (IsWindowEnabled()) 
        { 
            if (::GetKeyState(VK_CONTROL) >= 0) 
            { 
                if (VK_ESCAPE == nChar) 
                { 
                    SendMessage(WM_COMMAND, MAKELONG(IDCANCEL, 0), NULL); 
                } 
                else if (VK_RETURN == nChar) 
                { 
                    SendMessage(WM_COMMAND, MAKELONG(IDOK, 0), NULL); 
                } 
            } 
 
            SetMsgHandled(FALSE); 
        } 
    } 
 
    void OnOK(UINT /*uNotifyCode*/, int /*nID*/, CWindow /*wndCtl*/) 
    { 
        BKNMCOMMAND nms; 
        nms.hdr.code = BKNM_COMMAND; 
        nms.hdr.hwndFrom = m_hWnd; 
        nms.hdr.idFrom = IDC_RICHVIEW_WIN; 
        nms.uItemID = IDOK; 
        nms.szItemClass = ""; 
 
        LRESULT lRet = ::SendMessage(m_hWnd, WM_NOTIFY, (LPARAM)nms.hdr.idFrom, (WPARAM)&nms); 
    } 
 
    void OnCancel(UINT /*uNotifyCode*/, int /*nID*/, CWindow /*wndCtl*/) 
    { 
        BKNMCOMMAND nms; 
        nms.hdr.code = BKNM_COMMAND; 
        nms.hdr.hwndFrom = m_hWnd; 
        nms.hdr.idFrom = IDC_RICHVIEW_WIN; 
        nms.uItemID = IDCANCEL; 
        nms.szItemClass = ""; 
 
        LRESULT lRet = ::SendMessage(m_hWnd, WM_NOTIFY, (LPARAM)nms.hdr.idFrom, (WPARAM)&nms); 
    } 
 
public: 
    virtual BOOL PreTranslateMessage(MSG* pMsg) 
    { 
        return FALSE; 
    } 
 
protected: 
 
    BOOL m_bExitModalLoop; 
 
    void _ModalMessageLoop() 
    { 
        BOOL bRet; 
        MSG msg; 
 
        for(;;) 
        { 
            if (::PeekMessage(&msg, NULL, 0, 0, PM_NOREMOVE)) 
            { 
                if (WM_QUIT == msg.message) 
                    break; 
            } 
 
            if (m_bExitModalLoop
软件下载:      

(网视站,专业提供浏览器下载)

标签:软件 金山 程序 如何 

相关软件

2345安全卫士最新官方版

2345安全卫士官方版 | 45.34MB

2345安全卫士官方版

2345安全卫士是集电脑体检、木马查杀、垃圾清理、修复系统漏洞、系统加速、软件管理等功能为一体的电脑安全管理的软件.提供全方位检测,用户可以通过检测结果快速了解自己的电脑并且对电脑进行优化..

360杀毒软件官方正式版

360杀毒软件官方正式版 | 35.10MB

360杀毒软件官方正式版

360杀毒具有查杀率高、资源占用少、升级迅速等优点。零广告、零打扰、零胁迫,一键扫描,快速、全面地诊断系统安全状况和健康程度,并进行精准修复,带来安全、专业、有效、新颖的查杀防护体验...

360安全卫士最新版下载

360安全卫士最新版下载 | 50.3MB

360安全卫士最新版下载

360安全卫士是一款由奇虎360公司推出的功能强、效果好、受用户欢迎的安全杀毒软件。360安全卫士拥有查杀木马、清理插件、修复漏洞、电脑体检、电脑救援、保护隐私,电脑专家,清理垃圾,清理痕迹...

QQ电脑管家官方正式版

QQ电脑管家官方正式版 | 24.2MB

QQ电脑管家官方正式版

腾讯电脑管家(Tencent PC Manager/原名QQ电脑管家)是腾讯公司推出的免费安全软件。拥有云查杀木马,系统加速,漏洞修复,实时防护,网速保护,电脑诊所,健康小助手...

金山毒霸2022最新版下载

金山毒霸2022下载 | 37MB

金山毒霸2018最新版下载

金山毒霸融合了启发式搜索、代码分析、虚拟机查毒等技术。经业界证明成熟可靠的反病毒技术,以及丰富的经验,使其在查杀病毒种类、查杀病毒速度、未知病毒防治等多方面达到世界先进水平...

猎豹清理大师官方版下载

猎豹清理大师下载 | 47.4MB

猎豹清理大师官方版下载

猎豹清理大师(原金山清理大师)是由金山网络开发的智能手机应用。它可以清理智能手机上的应用缓存、残余程序文件、历史痕迹以及应用程序安装包...