AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

SetCursorPos ScreentoClient

Ein Thema von thomas2009 · begonnen am 31. Jan 2009 · letzter Beitrag vom 1. Feb 2009
Antwort Antwort
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.364 Beiträge
 
Delphi 12 Athens
 
#1

Re: SetCursorPos ScreentoClient

  Alt 1. Feb 2009, 09:12
Zitat von Praxist:
Ich verstehe nicht
was verstehst du denn nicht?

Delphi-Quellcode:
// Pt = der Punkt im Panel1, wo der Mauszeiger hin soll

Pt := Panel1.ClientToScreen(Pt);
SetCursorPos(Pt.X, Pt.Y);


Ja und wie soll man den Mauszeiger wieder von einem Punkt wegbekommen, wenn er ständig wieder dahin zurückgesetzt wird, sobald man versucht diesen von da wegzubewegen?

einfach mal in 'ner leeren Form einbauen ... und Maus in das Kästchen schieben:
(Tipp, da OnMouseMove zum Glück nicht immer sehr schnell ist ... die Maus ganz schnell bewegen und ihr kommt eventuell wieder raus)
Delphi-Quellcode:
Procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
  Var Pt: TPoint;

  Begin
    //Pt := Form1.ScreenToClient(Mouse.CursorPos);
    {}Pt.X := X; // wozu Mouse.CursorPos abfragen,
    {}Pt.Y := Y; // obwohl man die Werte doch schon in X und Y hat?

    Caption := Format('%d:%d', [Pt.X, Pt.Y]);

    If (Pt.X in [100..200]) and (Pt.Y in [50..150]) Then Begin
      Pt.X := 100 + (200 - 100) div 2; // 150
      Pt.Y := 50 + (150 - 50) div 2; // 100
      Pt := Form1.ClientToScreen(Pt);
      SetCursorPos(Pt.X, Pt.Y);
    End;
  End;

Procedure TForm1.FormPaint(Sender: TObject);
  Begin
    Canvas.Pen.Color := clBlack;
    Canvas.Brush.Style := bsClear;
    Canvas.Rectangle(100, 50, 200, 150);
  End;
[add]
Zitat:
Es ist nicht möglich den Mauszeiger mit ScreenToClient zu positionieren
das hab ich auch nicht behauptet, aber damit läßt sich die Position berechnen, welche man SetCursorPos übergibt
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:26 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz