Symulacja klikniecia myszka na forme która nie jest aktywna lub niewidoczna ( przykryta) inna forma.

0

Witam.
Prosze mi podpowiedziec jak mozna zrealizowac to zadanie. Zadanie polega na tym aby klikac myszka wkonkretny punkt na formatce nawet wtedy gdy forma jest niewidoczna (zminimalizowana lub przesłonieta innym oknem)

Nie oczekuje gotowców:) Prosze o porade lub sugestie jakich funkcji uzywac.
Pracuje w srodowisku Delphi 7.
Napisaem programik który sczytuje współrzedne kursora myszki podczas kliniecia, potrzebuje teraz to "odwrócic"

Szukałem juz podobnych tematów na tym forum jaki i w -oo-

0

Przejrzyj sobie tematy, w których bierze udział olesio - z całą pewnością tam znajdziesz rozwiązanie... dlatego, że takie pytania pojawiają się średnio raz w tygodniu :D

np. Sendmessage Do gry [mysz]

BTW: Symulacja, czyli to co można zrobić myszką robimy od strony programowej. A umiesz myszką kliknąć niewidoczne okno? Czy musisz je najpierw znaleźć, przywrócić i dopiero kliknąć?

0

Napotkałem kolejny problem:(
Mianowicie:

Jak zrobic aby sczytać współrzędne myszy podczas klinieca ale tak aby to zdarzenie nie dotarlo do formy nad która kliknęlismy.

P.S. Umiem sczytać wspólrzedne kursora przy kliknieciu. Interesuje mnie tylko przechwycenie zdarzenia aby nie dotarło do obiektu nad którym klikamy.
Czego trzeba uzyc aby tego dokonac?

Prosze o pomoc.

1

SendMessage
WM_LBUTTONDOWN
WM_LBUTTONUP

pod warunkiem, że na tej formie są przyciski i masz ich uchwyty, a jak nie da rady ich pobrać to sprawiasz, by okno programu się pokazało, pobierasz jego wymiary, klikasz w odpowiednie miejsce (wyliczysz se) i przywracasz poprzednie okno np. firefoxa

SetForegroundWindow
GetWindowRect
mouse_event
SetCursorPos

1

Ja bym rozwiązał to tak:

  1. CaptureMouse
  2. Stworzyć okienko rozmiarem 1x1 (może to być zwykły TLabel)
  3. Po zmianie pozycji kursora myszy "podstawiać" to okienko pod myszę.
  4. Po samym kliknięciu nie zapomnieć o odnowieniu CaptureMouse

1 użytkowników online, w tym zalogowanych: 0, gości: 1