将一个窗体钉在桌面上, 在任务上不显示, 操作Window提供的显示桌面的功能也不会最小化, windows自带的便笺软件功能很好用,但有两个功能个人认人产品化做的很不好,第一、显示在任务栏(便笺的目的就是提示自己要做的事,所有应该一直挂在桌面上,而任务栏原本空间就有限,如果占用任务样影响了正常的工作), 其二、点击桌面时会被最小化, 被最小化了就失去了便笺) 为了实现以上不足我想这个软件应该是钉在桌面上的。

实现方法要点:

1.  读取Window Desktop 窗体中ListView 控件;

2.  将此窗体的父窗体设置为步骤1返回窗体句柄即可;

一、关键代码块

     1. 查到桌面控件(可适用于WindowXP, Window7)

BOOL CALLBACK EnumWndProc(HWND hWnd, LPARAM lParam)
{
    HWND* hParent = (HWND*)lParam;
    TCHAR szClassName[MAX_PATH];
    GetClassName(hWnd, szClassName, MAX_PATH);
    if (NULL != GetWindow(hWnd, GW_CHILD))
    {
        HWND hShellDLL = FindWindowEx(hWnd, NULL, _T("SHELLDLL_DefView"), NULL);
        if (NULL != hShellDLL)
        {            
            HWND hListView = FindWindowEx(hShellDLL, 0, _T("SysListView32"), NULL);
            if (NULL != hListView)
            {
                *hParent = hListView;
                return FALSE;
            }
        }
    }

    return TRUE;
}

相关文章:

  • 2022-12-23
  • 2021-06-10
  • 2021-12-02
  • 2022-01-05
  • 2022-12-23
  • 2022-12-23
  • 2021-11-20
  • 2021-12-12
猜你喜欢
  • 2022-01-19
  • 2022-01-28
  • 2021-07-13
  • 2022-12-23
  • 2021-12-02
  • 2021-10-05
相关资源
相似解决方案