zoukankan      html  css  js  c++  java
  • 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);
    }

  • 相关阅读:
    ES6参考---Generator函数
    ES6参考---for...of方法
    ES6参考---Symbol属性
    ES6参考---形参默认值
    ES6参考---...运算符
    ES6参考---箭头函数
    legend3---一些手机浏览器打开网站提示安全证书有问题
    legend3---cdn加速oss域名配置问题
    一位草根炒房者的挣扎10年 竟落得如此下场
    LINUX:解压问题tar: Child returned status
  • 原文地址:https://www.cnblogs.com/shenchao/p/3117857.html
Copyright © 2011-2022 走看看