如何最小化所有应用程序到任务栏?就像点了"显示桌面"一样效果

解决方案 »

  1.   

    呵呵
    简单问题用绝招!就调用“显示桌面”!uses ShellAPI;procedure TForm1.Button1Click(Sender: TObject);
    begin
      ShellExecute(Handle, nil, 'C:\Documents and Settings\Administrator\Application Data\Microsoft\Internet Explorer\Quick Launch\Show Desktop.scf',
        nil, nil, SW_Show);
    end;
      

  2.   

    先AAA=GetWindow(Handle, GW_HWNDFIRST),
    while AAA > 0 do
    begin
    再SENDMESSAGE(AAA,WM_SYSCOMMAND,SC_MINIMIZE),
    然后AAA=GetWindow(hCurrentWindow, GW_HWNDNEXT),
    END
      

  3.   

    上有误先AAA=GetWindow(Handle, GW_HWNDFIRST),
    while AAA > 0 do
    begin
    再SENDMESSAGE(AAA,WM_SYSCOMMAND,SC_MINIMIZE),
    然后AAA=GetWindow(AAA, GW_HWNDNEXT),
    END
      

  4.   

    还有误。在SENDMESSAGE后面再加个参数0
      

  5.   

    DemonLoveLizzy(魑魅魍魉) 兄的可以:
    先AAA=GetWindow(Handle, GW_HWNDFIRST),
    while AAA > 0 do
    begin
    再SENDMESSAGE(AAA,WM_SYSCOMMAND,SC_MINIMIZE,0),
    然后AAA=GetWindow(AAA, GW_HWNDNEXT),
    END
      

  6.   

    但要声明一下:
    var
      aaa:hwnd;
      

  7.   

    DemonLoveLizzy(魑魅魍魉) 兄方法是可以的
    我的想法为什么不行呢?:首先找出所有的应用程序的句柄,然后把它设置一个WS_ICONIC风格.但窗口显示一个空白,然后没有最小化按纽了,有谁知道原因吗?
      

  8.   

    谢谢了,我通过模拟键WIN+M实现了!结帐!