Mausbereich verkleinern - ClipCursor funktioniert nicht
lima-city → Forum → Programmiersprachen → Delphi & Pascal
arbeit
aufheben
benutzen
bereich
bestehen
bewegen
bildschirm
code
dank
form
formular
hintergrund
maus
problem
rad
sender
sir
url
vergessen
verkleinern
-
Hallo.
Ich würde gerne den Maus-Bereich auf mein Form1 verkleinern, so dass die Maus nicht das Form verlassen kann.
Ich hab schon fleißig gegoogelt aber bin immer auf ClipCursor gestoßen.
Ich hab bei meinem Programm dann folgendes probiert:
procedure TForm1.FormCreate(Sender: TObject); var Rec: TRect; begin Rec.Left := Left; Rec.Top := Top; Rec.Right := Left + Width; Rec.Bottom := Top + Height; ClipCursor(@Rec); end;
Aber es funktioniert einach nicht. Ich hab schon andere Varianten probiert.
Die Maus kann sich aber noch immer auf dem ganzen Bildschirm bewegen.
Hab ich was vergessen? Oder falsch gemacht?
Oder gibts einen anderen Weg?
Danke im Vorraus -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Grundsätzlich kannst du ClipCursor erst benutzen, wenn das Formular angezeigt wurde (und nicht bevor)! Darin wird auch das Problem bestehen. Wenn du den Code nicht in das OnShow-Event gibst, sondern in das OnActivate solltest du kein Problem damit haben (getestet )
Der Code an sich läßt sich vereinfachen:
var r: TRect; begin r := BoundsRect; ClipCursor(@r);
Aufheben kannst du das mit
ClipCursor(nil);
RAD hat auch seine Tücken, wenn man nicht versteht, was sir im Hintergrund an Arbeit abgenommen wird
http://delphi.about.com/od/formsdialogs/a/delphiformlife.htm -
alternativ über einen Timer in TForm1
procedure TForm1.Timer1Timer(Sender: TObject);
var
Rec: TRect;
begin
Timer1.enabled:=false;
Rec.Left := Left;
Rec.Top := Top;
Rec.Right := Left + Width;
Rec.Bottom := Top + Height;
ClipCursor(@Rec);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
Timer1.Interval=1;
Timer1.Enabled:=true;
end;
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage