• Win32:即给编辑框添加新窗口过程,也保留原来的窗口过程属性



    WNDPROC wpOrigEditProc;

    LRESULT APIENTRY EditBoxProc(
        HWND hwndDlg,
        UINT uMsg,
        WPARAM wParam,
        LPARAM lParam)
    {
        HWND hwndEdit;

        switch(uMsg)
        {
            case WM_INITDIALOG:
                // Retrieve the handle to the edit control.
                hwndEdit = GetDlgItem(hwndDlg, ID_EDIT);

                // Subclass the edit control.
                wpOrigEditProc = (WNDPROC) SetWindowLong(hwndEdit,
                    GWL_WNDPROC, (LONG) EditSubclassProc);
                //
                // Continue the initialization procedure.
                //
                return TRUE;

            case WM_DESTROY:
                // Remove the subclass from the edit control.
                SetWindowLong(hwndEdit, GWL_WNDPROC,
                    (LONG) wpOrigEditProc);
                //
                // Continue the cleanup procedure.
                //
                break;
        }
        return FALSE;
            UNREFERENCED_PARAMETER(lParam);
    }

    // Subclass procedure
    LRESULT APIENTRY EditSubclassProc(
        HWND hwnd,
        UINT uMsg,
        WPARAM wParam,
        LPARAM lParam)
    {
        if (uMsg == WM_GETDLGCODE)
            return DLGC_WANTALLKEYS;

        return CallWindowProc(wpOrigEditProc, hwnd, uMsg,
            wParam, lParam);
    }

  • 相关阅读:
    minecraft我的世界汇总网站
    扫雷网页版
    扫雷模型(非完全一样)
    设计模式-策略模式
    hadoop(2)hadoop配置
    hadoop(1)入门
    Openssl
    加密解密
    信息安全通信
    Web
  • 原文地址:https://www.cnblogs.com/shenchao/p/3117857.html
Copyright © 2020-2023  润新知