Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

WinDa DLLs и тому подобное

1.9K
25 мая 2007 года
tva94
115 / / 01.05.2007
Сюда пишите то, чего вы достигли через нестандартные методы. Например: Как заблокировать кнопку (закрыть) на форме


using System.Runtime.InteropServices;



private const int MF_BYPOSITION = 0x400;
private const int MF_REMOVE = 0x1000;
private const int MF_DISABLED = 0x2;

[DllImport("user32.Dll")]
public static extern IntPtr RemoveMenu(int hMenu, int nPosition, long wFlags);

[DllImport("User32.Dll")]
public static extern IntPtr GetSystemMenu(int hWnd, bool bRevert);

[DllImport("User32.Dll")]
public static extern IntPtr GetMenuItemCount(int hMenu);

[DllImport("User32.Dll")]
public static extern IntPtr DrawMenuBar(int hwnd);


public void DisableCloseButton(int hWnd)
{
IntPtr hMenu;
IntPtr menuItemCount;

//Obtain the handle to the form's system menu
hMenu = GetSystemMenu(hWnd, false);

// Get the count of the items in the system menu
menuItemCount = GetMenuItemCount(hMenu.ToInt32());

// Remove the close menuitem
RemoveMenu(hMenu.ToInt32(), menuItemCount.ToInt32() - 1, MF_DISABLED | MF_BYPOSITION);

// Remove the Separator
RemoveMenu(hMenu.ToInt32(), menuItemCount.ToInt32() - 2, MF_DISABLED | MF_BYPOSITION);

// redraw the menu bar
DrawMenuBar(hWnd);
}

// Впишите куда надо (оно вызывает всю эту эрунду)
DisableCloseButton(this.Handle.ToInt32());//В режиме компелятора не работает, а просто так - работает, как по маслу


Ели что пишите сюда, а я, ели буду находить, буду помогоать :)
713
26 мая 2007 года
Ap0k
360 / / 13.03.2006
hp].
Зачем здесь дублировать PInvoke.net ? :o
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог