SetWindowLong(Handle,GWL_EXSTYLE,GetWindowLong(Handle,GWL_EXSTYLE) or WS_EX_APPWINDOW);
使用上面的代码可以将非主窗体直接最小化到任务栏,不在桌面左下角显示
可是任务栏上出现了两个同样的东西
如果解决这个问题呀?

解决方案 »

  1.   

    试试这个
      SetWindowLong(Application.Handle,GWL_EXSTYLE,WS_EX_TOOLWINDOW);//隐藏窗体
      
      ShowWindow(Application.Handle,SW_HIDE); //隐藏主应用
      

  2.   

    这个application还是整个任务的句柄,LZ想问的任务中的是某一个窗体!而不是整个任务
      

  3.   

      //因为本窗体不是主窗体了,为使窗体在最小化后在任务栏上,使用以下这句
      //把程序在任务栏的那个去掉
      SetWindowLong(Application.Handle, GWL_EXSTYLE, WS_EX_TOOLWINDOW);
      //再设置当前窗体最小化到任务栏上
      SetWindowLong(Handle, GWL_EXSTYLE, GetWindowLong(Handle,GWL_EXSTYLE) or WS_EX_APPWINDOW);