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);
    }

  • 相关阅读:
    windows7 gvim 配置(好用)
    程序员的惰性
    java性能提升
    spring cloud gateway 负载均衡流程
    广告业务
    mysql二进制binarylog监控服务
    虽然垃圾,以后用得到在翻一翻,优化下
    hash冲突后处理
    jdk1.6乃至1.7中的Iepoll空轮询bug,netty中是怎样解决的
    树形结构
  • 原文地址:https://www.cnblogs.com/shenchao/p/3117857.html
Copyright © 2011-2022 走看看