Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.024 c
14-1126184463
Prohodil Mimo
2005-09-08 17:01
2005.10.02
Кто может помоч с приобретенийем мыши?


9-1117444315
keal
2005-05-30 13:11
2005.10.02
создание 3д моделей


1-1126172596
AddValue
2005-09-08 13:43
2005.10.02
Delphi vs Assembler


14-1126689086
Unleashed
2005-09-14 13:11
2005.10.02
Нужна свежая идея


1-1126273329
pupkin
2005-09-09 17:42
2005.10.02
как в объекте dhtmledit отформатировать кусок текста




   Наверх