Вниз
Скачать: CL | DM;

что находится под курсором мыши?   Найти похожие ветки 

← →
sia ©   (2007-02-21 17:13) [0]

курсор мыши находится за пределами окна моей программы.
мне надо определить, находиться ли он над окном проводника? и если да, то какой каталог там открыт?
как можно это сделать?


← →
Игорь Шевченко ©   (2007-02-21 17:24) [1]


> мне надо определить, находиться ли он над окном проводника?
>  


SetCapture, в OnMouseMove смотреть WindowFromPoint, про каталог ничего не могу сказать


← →
sia ©   (2007-02-21 17:30) [2]

я сделал
GetCursorPos(rPos) ;
hWnd := WindowFromPoint(rPos);
тем самым получил хендл окна под мышкой. и все. дальше не знаю, что делать.


← →
Игорь Шевченко ©   (2007-02-21 17:37) [3]

sia ©   (21.02.07 17:30) [2]


> дальше не знаю, что делать.


GetWindowText например позволит узнать заголовок окна. Если в нем есть имя каталога, то это имя можно оттуда вычислить


← →
sia ©   (2007-02-21 17:46) [4]

возвращает только строку "FolderView"


← →
Игорь Шевченко ©   (2007-02-21 17:57) [5]

sia ©   (21.02.07 17:46) [4]

Как заготовка:

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

procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
 Y: Integer);
var
 P: TPoint;
 H: HWND;
 AText: array[0..255] of char;
begin
 P := ClientToScreen (Point(X, Y));
 H := WindowFromPoint(P);
 if (H <> Handle) and IsWindow(H) then begin
   while GetParent(H) <> 0 do
     H := GetParent(H);
   GetWindowText(H, AText, SizeOf(AText));
   Edit1.Text := AText;
   ReleaseCapture;
 end;
end;


← →
sia ©   (2007-02-21 18:03) [6]

GetParent помог.
спасибо :)



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

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



Память: 0.46 MB
Время: 0.032 c
2-1175086004
Alll
2007-03-28 16:46
2007.04.15
Рисование линий на TImage


1-1171952883
Ega23
2007-02-20 09:28
2007.04.15
Вот такая ошибка начала вываливаться при переходе


1-1171628997
iXT
2007-02-16 15:29
2007.04.15
TService + TThread + TXMLDocuent


3-1169627283
Alex'
2007-01-24 11:28
2007.04.15
Передача параметра-массива в процедуру (Oracle 10g XE)


2-1174820574
aht
2007-03-25 15:02
2007.04.15
Обнуление "счетчика" в Access




   Наверх