Вниз
Скачать: 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.028 c
6-1118094195
Vanek_TV
2005-06-07 01:43
2005.10.02
Кодировка


4-1123441832
Anton S.
2005-08-07 23:10
2005.10.02
системный трей


2-1123411165
panov
2005-08-07 14:39
2005.10.02
Правила конференции.


14-1126504704
TUser
2005-09-12 09:58
2005.10.02
Накормить народ не трудно, Если топоры в руках. :))


1-1126078099
Alpine
2005-09-07 11:28
2005.10.02
Как лучше округлять денежные значения ?




   Наверх