Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Общие вопросы по .NET и C# > Как скрыть taskbar?


Автор: Xell 9.1.2005, 13:15
Запущена программка, по нажатию некоторых клавишь, выполняет различные фнукции. Как добавить возможность скрывать taskbar? Ну и на место вернуть smile Хотелось бы пример на с#

Автор: Gazon 9.1.2005, 19:36
Следующий класс скрывает taskbar на 10 секунд.
Код
using System;
using Microsoft.Win32;
using System.Reflection;
using System.Runtime.InteropServices;
using System.Threading;
using System.Diagnostics;
namespace SearchAssistantKiller
{

class App
{
 [DllImport("user32.dll")]
 public static extern int FindWindow(String a,String b);
               [DllImport("user32.dll")]
 public static extern bool ShowWindow(int a,int b);
//экспортируем ф-ии, чтобы найти и скрыть taskbar.
 static void Main()
 {
 
           int ParentPtr=FindWindow("Shell_TrayWnd" /*taskbar зарегистрирован в системе как Shell_TrayWnd*/ ,null);//находим taskbar
           ShowWindow(ChildPtr,0);//скрываем taskbar
           Thread.Sleep(10000); //ждем 10 сек.
    ShowWindow(ParentPtr,1);//показываем taskbar
 
       }
}
}

Автор: 4EJIOBEK 12.12.2007, 14:09
Добавил код к своему приложению, вываливаеться с Exception DragDrop registration did not succeed.

Как можно решить данную проблемку!? 

Автор: Beeswax 15.12.2007, 18:40
Можно сделать немного проще ))
У класа  Form есть свойство ShowInTaskbar меняя его можно добиться нужного результата)
Код

this.ShowInTaskbar = false; \\скрыть
this.ShowInTaskbar = true; \\показать

Автор: stab 15.12.2007, 19:12
Beeswax, дык, скрывает только значёк программы, а не всю панель задач.

Автор: Beeswax 16.12.2007, 15:05
Сорри не внимательно прчитал вопрос  smile

Добавлено через 12 минут и 26 секунд
Все работает, если исправить маленькую ошибку в коде
Автор написал
Код

int ParentPtr=FindWindow("Shell_TrayWnd", null);
ShowWindow(ChildPtr,0);
Thread.Sleep(10000);
ShowWindow(ParentPtr,1);


А нужно было
Код

int ParentPtr = FindWindow("Shell_TrayWnd", null);
Text = ParentPtr.ToString();
ShowWindow(ParentPtr, 0);
Thread.Sleep(10000);
ShowWindow(ParentPtr, 1);

Автор: 4EJIOBEK 17.12.2007, 18:11
Сразу так и сделал.
Добавил этот код перед запуском главной формы, выдавало ошибку, пока не перес этот код в отдельный класс.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)