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

Вниз

Убрать меню по правой клавиши мышки   Найти похожие ветки 

 
Sergserg   (2002-07-26 08:06) [0]

Здраствуйте уважаемые мастера. Есть такой вопрос как убрать(скрыть)меню появляющееся при нажатии правой кнопки мыши на кнопки Пуск.




С уважением.


 
Eugene Lachinov ©   (2002-07-26 10:01) [1]

Ответа, наверно, не знаю, но интересно зачем ?


 
Sergserg   (2002-07-26 10:44) [2]

Затем что в этом меню есть пункт Проводник Который мне абсолютно не нужен


 
Eugene Lachinov ©   (2002-07-26 14:36) [3]

Вариант с использованием SetWindowsHookEx

library MouseDll;

{$R *.res}

uses
Messages,
SysUtils,
Windows;

var
MouseHookHandle : HHook;
hStartButton : HWnd;

function GetStartButton : HWnd;
var
ClassName : array[0..255] of char;
begin
Result := Windows.FindWindow("Shell_TrayWnd", "");
if Result <> 0 then begin
Result := GetWindow(Result, GW_CHILD);
repeat
GetClassName(Result, ClassName, 255);
if lstrcmpi(ClassName, "Button") = 0 then
Break
else
Result := GetWindow(Result, GW_HWNDNEXT);
until Result = 0
end
end;

function MouseProc(nCode : Integer; // hook code
wParam : WPARAM; // message identifier
lParam : LPARAM // mouse coordinates
) : LRESULT; stdcall;
begin
if (nCode = HC_ACTION) and ((wParam = WM_RBUTTONDOWN) or (wParam = WM_RBUTTONUP)) and
(PMouseHookStruct(lParam)^.hwnd = hStartButton) then
Result := 1
else
Result := CallNextHookEx(MouseHookHandle, nCode, wParam, lParam)
end;

function MouseHook : Bool; stdcall;
begin
Result := hStartButton <> 0;
if Result then
MouseHookHandle := SetWindowsHookEx(WH_MOUSE, MouseProc, HInstance, 0);
end;

procedure MouseUnhook; stdcall;
begin
UnhookWindowsHookEx(MouseHookHandle)
end;

exports
MouseHook,
MouseUnhook;

begin
hStartButton := GetStartButton
end.

.........

function MouseHook : Bool; external "MouseDll.dll";
function MouseUnhook : Bool; external "MouseDll.dll";

procedure TForm1.Button1Click(Sender: TObject);
begin
MouseHook
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
MouseUnhook
end;


 
Sergserg   (2002-07-29 20:20) [4]

Спасибо попробую



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

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

Наверх




Память: 0.47 MB
Время: 0.016 c
1-20967
Шурик Ш
2002-09-25 18:00
2002.10.07
Открытие формы


1-21060
Gayrus
2002-09-27 16:11
2002.10.07
Поиск


14-21252
cyborg
2002-09-11 14:15
2002.10.07
Вставка картинок в редактор


1-21074
liho26
2002-09-24 06:49
2002.10.07
Перехват нажатия клавиш из другого приложения


14-21203
Феликс
2002-09-03 22:44
2002.10.07
---|Ветка была без названия|---