获取桌面图标句柄

桌面图标是放在 SysListView32这个列表中

void C***::OnSetDeskIcon()

{

          HWND hwndParent = ::FindWindow( "Progman", "Program Manager" );

          HWND hwndSHELLDLL_DefView = ::FindWindowEx( hwndParent, NULL, "SHELLDLL_DefView", NULL );

           HWND hwndSysListView32 = ::FindWindowEx( hwndSHELLDLL_DefView, NULL, "SysListView32", "FolderView" );

          int Nm = ListView_GetItemCount( hwndSysListView32 );

          int sNm = 0;

          if( Nm >= 10 )

          {

                   sNm = 10;

           }else

           {

                   sNm = Nm;

            }

            for( int i = 0; i < sNm; i++ )

             {

                       int x = 400 + 150*cos( i*36*3.1415926/180 );

                       int y = 400 + 150*sin( i*36*3.1415926/180 );

                       ::SendMessage( hwndSysListView32, LVM_SETITEMPOSITION, i, MAKELPARAM( x,y));

             }

             ListView_RedrawItems(hwndSysListView32, 0, ListView_GetItemCount(hwndSysListView32) - 1);

               ::UpdateWindow(hwndSysListView32);

}

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值