Newsgroup: it.comp.lang.delphi
Titolo: Messaggio a finestra

Problema: devo inviare un messaggio del tipo "click del pulsante sx del
mouse alla posizione (x, y) della finestra <handle>".(non posso utilizzare
le coordinate assolute ma solo relative alla finestra)
Ho provato cosi':
    p := $00fa001a;
    SetCapture(handle); // e' necessario ?
    SendMessage(handle, WM_MOUSEMOVE, 0, p);
    SendMessage(handle, WM_LBUTTONDOWN, 0, p);
    SendMessage(handle, WM_LBUTTONUP, 0, p);
...ma non funzia.
Ho provato WM_MOUSEWHEEL e funziona (...ma non ci faccio niente ;) ).
Ho provato anche:
    SetCapture(handle);
    mouse_event(MOUSEEVENTF_MOVE, x, y, 0, 0);
ma lo spostamente e' relativo alla posizione corrente del mouse (mentre
dovrebbe essere relativo alla finestra <handle>), mentre
    mouse_event(MOUSEEVENTF_MOVE or MOUSEEVENTF_ABSOLUTE, x, y, 0, 0);
funziona (ma non posso lavorare con le coordinate assolute!).
In alternativa, come faccio ad ottenere l'handle di una immagine
visualizzata dal browser ?
Ho provato con WinSight e Greatis WinDowse (
www.greatis.com
) ma trovano solo
l'handle della finestra :(
Simone.
__________________________________
...e dio disse: "pkunzip universo.zip"
ICQ #: 19598133
Webmaster di 
www.drfalken.com
__________________________________

 funziona (ma non posso lavorare con le coordinate assolute!).
? Perchè no?  una coordinata è "assoluta" per un determinato sistema di
riferimento...
Puoi trasformare le coordinate relative in assolute conoscendo la posizione
della finestra bersaglio:
ax, ay : integer;
r : trect;
GetWindowRect (Handle, R);
AX := R.Left;
AY := R.Top;
// setcursorpos (ax+x,ay+y); // potresti averne bisogno
mouse_event(MOUSEEVENTF_MOVE or MOUSEEVENTF_ABSOLUTE, ax+x, ay+y, 0, 0);
Ciao, Davide DG

 della finestra bersaglio:
[cut]
Ok ma l'oggetto da "cliccare" e' visibile soltanto facendo lo scrolling
della finestra: operazione fattibile ma non mi piace questo "workaround".
In alternativa, come faccio ad inviare una sequenza di caratteri ad una
finestra (diciamo, una serie di TAB che conclude con un INVIO) ?
Simone.


 ...e dio disse: "pkunzip universo.zip"
finchè l'universo è in espansione si....poi farà un bel PKZip e noi chissà
che fine faremo. Se è vero il bing bang, un rapporto di compressione simile,
ce lo sognamo !! :-)))

 mouse_event(MOUSEEVENTF_MOVE or MOUSEEVENTF_ABSOLUTE, ax+x, ay+y, 0, 0);
mi sbaglio oppure le funzioni ( anche API ) "ClientToScreen" e
"ScreenToClient" servono proprio a questo ?
Ti saluto....ci sentiamo. Buona domenica !!
Antonio Tarolla

 ce lo sognamo !! :-)))
Beh, se non sbaglio ci sono 2 scuole di pensiero:
    1. pkzip -ex -d universo.zip tra qualche miliardo (?) d'anni
    2. espansione all'infinito
io sono per la seconda ;)

 "ScreenToClient" servono proprio a questo ?
Boh... immagino di sě... ma io preferisco questo sistema... mi sa piů di
"geometrico" ;PPP
Ciao!! Davide DG
Buona Domenica anche a te... io la passerň a studiare, sigh!

 Buona Domenica anche a te... io la passerò a studiare, sigh!
qualche esame universitario ? Bè, in bocca al lupo.


> qualche esame universitario ? Bè, in bocca al lupo.
Crepi il lupoooo !!! (non potevo non rispondere !! ;PPP )
Thx, ciao, Davide DG