![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Запрет удаления в Win 98, pop up меню .... [Win95/98]
SiDoff © (2004-12-17 09:15:00)Как программно сделать так, что бы по нажатию правой кнопки мыши ничего не происходило (pop up меню тоже не появлялось) в Win 98.
Как запретить удаление в Win 98 с помощью клавиш del, shift del,
Ctrl-X, или как подавить реакцию на эти клавиши.
Дайте пожалкйста реальные примеры.
SiDoff (2004-12-17 13:36:00) [1]Ну 0 возвращает GetMenu и GetSystemMenu
procedure TForm1.Button9Click(Sender: TObject);
var
HM : hMenu;
HW,XW : HWND;
S : string;
begin
SetLength(S,60);
HW:=GetWindow(FindWindow('ExploreWClass',nil),GW_CHILD);
if HW=0 then Exit;
while HW<>0 do
begin
GetClassName(HW,PChar(S),60);
if Pos('SHELLDLL_DefView',S)<>0 then
begin
XW:=HW;
Break;
end;
HW:=GetWindow(HW,GW_HWNDNEXT);
end;
ShowMessage('Handle SHELLDLL_DefView -> '+IntToStr(XW));
HM:=GetMenu(XW);
ShowMessage(' GetMenu = '+IntToStr(HM));
HM:=GetSystemMenu(XW,FALSE);
ShowMessage(' GetSystemMenu = '+IntToStr(HM));
end;
Что я не так делаю ?
-=SS=- (2004-12-17 13:17:00) [2]Ну так используй handle компонента а не окна
SiDoff (2004-12-17 11:54:00) [3]Ето ж системное меню. А мне надо pop up компонента на чужой форме!
SiDoff (2004-12-17 11:52:00) [4]Ето ж системное меню. А мне надо pop up компонента на чужой форме!
-=SS=- (2004-12-17 10:40:00) [5]
GetSystemMenu()
SiDoff (2004-12-17 10:23:00) [6]И, кстати, как получить указатель на Pop up меню
допустим SHELLDLL_DefView32 проводника ? )))
SiDoff (2004-12-17 10:21:00) [7]И, кстати, как получить указатель на Pop up меню ? )))
SiDoff (2004-12-17 10:21:00) [8]И, кстати, как получить указатель на Pop up меню ? )))
SiDoff (2004-12-17 10:19:00) [9]Речь идет о ЧУЖИХ приложениях (например тот же Проводник)!
-=SS=- (2004-12-17 10:09:00) [10]Какое popup menu ? В каком контроле ?
Хотя ... можно переобределить PopupMenu ... подставив свой пустой, а на кнопки в обработчике onkeydown пишешь
inherited;
case key of
VK_Del : Key :=0;
.......
end;