Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Система";
Текущий архив: 2002.10.07;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.008 c
1-21127
nikitin
2002-09-24 13:02
2002.10.07
после инсталяции Delphi6 на W2kPro не инсталируются сервис паки


1-21002
mmb
2002-09-23 14:26
2002.10.07
работает ли кого-нибудь D6 под W2k на Athlon+ и если да то как?


1-21100
Slava_BAZ
2002-09-25 13:04
2002.10.07
Мигающая надпись


1-20982
Separator
2002-09-26 14:34
2002.10.07
Странная ситуация с Application.Title


14-21228
Doctor Snap
2002-09-11 22:59
2002.10.07
Delphi und Linux





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский