Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.10.02;
Скачать: CL | DM;

Вниз

Отключение системного меню   Найти похожие ветки 

 
Гена   (2005-09-06 11:09) [0]

Поиск не работает - поэтому задам здесь.
Как отключить появление системного меню у формы (когда правой кнопкой по заголоку формы)?


 
Big Joe ©   (2005-09-06 14:03) [1]

Если в HNDL указать Application.Handle, то меню добавиться к меню
при клике правой кнопокой мыши на панели задач.
Если Form1.Handle (или любая ваша форма и даже не ваша),
то к системному меню окна клик на иконке окна (слева сверху в углу).

procedure ExtendSysMenu(HNDL: THandle; AddMenu: TMainMenu);
var
 i: integer;
begin
 if (AddMenu = nil) or (HNDL = 0) then
   Exit; //Проверяем ссылку на объект

 AppendMenu(GetSystemMenu(HNDL, False),
   MF_SEPARATOR, 0, ""); //Добавляем разделитель

 with AddMenu do
   for i := 0 to Items.Count - 1 do
     AppendMenu(GetSystemMenu(HNDL, False),
       MF_POPUP, Items[i].Handle,
       PChar(Items[i].Caption));
end;
Пример использования:

//На форму кидаем MainMenu (компоненту)
procedure TForm1.FormCreate(Sender: TObject);
begin
 ExtendSysMenu(Application.Handle, MainMenu1);
 ExtendSysMenu(Form1.Handle, MainMenu1);
end;


 
begin...end ©   (2005-09-06 16:37) [2]

> Гена   (06.09.05 11:09)

Насколько я знаю, вместе с меню отключатся и кнопки (Свернуть/Развернуть/Закрыть).


 
Турист   (2005-09-06 23:04) [3]

>Гена   (06.09.05 11:09)  
TForm.BorderIcons.biSystemMenu=False ?


 
Юрий Зотов ©   (2005-09-07 01:32) [4]

procedure TForm1.FormCreate(Sender: TObject);
var
 M: HMENU;
begin
 M := GetSystemMenu(Handle, False);
 while DeleteMenu(M, 0, MF_BYPOSITION) do
end;



Страницы: 1 вся ветка

Текущий архив: 2005.10.02;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.026 c
1-1125945109
solenko
2005-09-05 22:31
2005.10.02
Чтение из реестра REG_MULTI_SZ


4-1123500581
Reket
2005-08-08 15:29
2005.10.02
Программа которая не удаляется из списка задач


2-1124562995
Пантелеев Иван
2005-08-20 22:36
2005.10.02
RadioGroup


4-1123576343
Po
2005-08-09 12:32
2005.10.02
WinAPI процесс CD-ROM`a


14-1126601670
марсианин
2005-09-13 12:54
2005.10.02
Чудо-ноутбук