Программирование >>  Автоматически обновляемые приложения 

1 ... 155 156 157 [ 158 ] 159 160 161 ... 170


[StructLayout(LayoutKind.Sequential)] public struct AppBarData {

public int cbSize;

public IntPtr hWnd;

public int uCallbackMessage;

public int uEdge;

public RECT rc;

public IntPtr IParam;

IntPtr hWnd, ref RECT rect);

[Dlllmport( shell32.dll )]

private static extern int SHAppBarMessage( int flag,

ref AppBarData abd);

[Dlllmport( user32.dll )] static extern bool ShowWindow( IntPtr hWnd, int nCmdShow);

[Dlllmport( user32.dll )]

public static extern IntPtr SendMessage(IntPtr hWnd, UInt32 Msg, Int32 wParam, Int32 iParam);

const int WM SYSCOMMAND = 0x0112;

private const int SC TASKLIST = 0xF130;

private const int ABM GETSTATE = 4;

private const int ABM GETTASfCBARPOS = 5;

private const int ABM SETSTATE = 10;

private const int SW HIDE = 0;

private const int SW SHOW = 5;

состояние Панели задач private const int ABS AUTOHIDE = 1; private const int ABS ALWAYSONTOP = 2; private const int ABS BOTH = 3;



private void butShowStart Click(object sender, EventArgs e) {

Показываем ьснопку Пуск Showwindow(hWndStart, SW SHOW);

private void butPressStart Click(object sender, EventArgs e) {

Нажимаем на кнопку Пуск

SendNessage(this.Handle, WM SYSCOMMAND, SC TASKLIST, 0);

[StructLayout(LayoutKind.Sequential)] public struct RECT {

public int left; public int top; public int right; public int bottom;

Описатель Панели задач IntPtr hW;

Описатель кнопки Пуск IntPtr hWndStart;

Описатель области уведомлений IntPtr tray;

private void butHideStart Click(object sender, EventArgs e) {

Ищем окно с классом Shell TrayWnd

hW = FindWindowEx(IntPtr.Zero, IntPtr.Zero, Shell TrayWnd ,null); Получим описатель кнопки Пуск

hWndStart = FindWindowEx(hW, IntPtr.Zero, BUTTON , null); Прячем кнопку Пуск Showwindow(hWndStart, SW HIDE);



private void butShowTray Click(object sender, EventArgs e) {

ShowWindow(tray, SW SHOW);

private void butHideClock Click(object sender, EventArgs e) {

Описатель панели задач

hW = FindWindowEx(IntPtr.Zero, IntPtr.Zero, Shell TrayWnd , null). Описатель области уведомлений

tray = FindWindowEx(hW, IntPtr.Zero, TrayNotifyWnd , null); Описатель системных часов

IntPtr trayclock = FindWindowEx(tray, IntPtr.Zero,

TrayClockWClass , null);

Прячем системные часы ShowWindow(trayclock, SW HIDE);

private void butTaskbar Click(object sender, EventArgs e) {

AppBarData bardata = new AppBarData();

bardata.cbSize = Marshal.SizeOf(typeof(AppBarData));

bardata.hWnd = Handle;

int retval = SHAppBarMessage(ABM GETSTATE, ref bardata); switch (retval)

private void butHideTray Click(object sender, EventArgs e) {

hW = FindWindowEx(IntPtr.Zero, IntPtr.Zero, Shell TrayWnd , null); Дескриптор области уведомлений

tray = FindWindowEx(hW, IntPtr.Zero, TrayNotifyWnd , null);

Прячем область уведомлений ShowWindow(tray, SW HIDE);



1 ... 155 156 157 [ 158 ] 159 160 161 ... 170

© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика