![]() |
Form mitte mit maus Focussieren
Ich ma wieder mit meinen ideen xD
diesmal: gitbs ne möglichkeit das die Maus per buttondruck in die mitte der Form geht? oder dass die Form der maus folgt, sobald die am rand der Form is? also das die Form dann "mitgezogen" wird? müsst ja eigtl mit Mouse.CursorPos := Point(x,y); un für x und y halt die koordinaten( die ja dynamisch sin, desshalb weis ich net wie ich das machn soll) gehn oder? |
Re: Form mitte mit maus Focussieren
es müsste eigentlich mit dem hier gehen, das hab ich on the fly geschrieben also event noch nen bissel rummbasteln ;-)
Delphi-Quellcode:
uses
windows; var x, y: integer; x := GetSystemMetrics(SM_CXSCREEN); y := GetSystemMetrics(SM_CYSCREEN); Mouse.CursorPos := Point((x div 2),(y div 2)); mfg |
Re: Form mitte mit maus Focussieren
@lbccaleb: Es geht um die mitte der From nicht um die Mitte der Bildschirme.
|
Re: Form mitte mit maus Focussieren
Zitat:
edit: (form1.width div 2) (form1.high div 2) so ungefähr müsste es dann ja aussehen.. mfg |
Re: Form mitte mit maus Focussieren
Hallo Cran7,
Zitat:
Delphi-Quellcode:
Mouse.CursorPos := Point(Form1.Left + Form1.Width div 2, Form1.Top + Form1.Height div 2);
Zitat:
Delphi-Quellcode:
if Mouse.CursorPos.X < Form1.Left then
Form1.Left := Mouse.CursorPos.X else if Mouse.CursorPos.X > (Form1.Left + Form1.Width) then Form1.Left := Mouse.CursorPos.X - Form1.Width; if Mouse.CursorPos.Y < Form1.Top then Form1.Top := Mouse.CursorPos.Y else if Mouse.CursorPos.Y > (Form1.Top + Form1.Height) then Form1.Top := Mouse.CursorPos.Y - Form1.Height; Grüße |
Re: Form mitte mit maus Focussieren
erstma fettes thx, das war das was ich gesucht hab :)
jetzt noch ne frage^^ gibts ne möglichkeit den timer etwas schneller zu machen? bei mir hat das immer ca 1sec verzögerung, un das is net so toll E: hat sich erledigt, is ja einfach, einfach interval runterschraubn^^ |
Re: Form mitte mit maus Focussieren
wäre es nicht besser statt dem timer einfach onMouseLeave der Form zu benutzen?
kp ob das funktioniert^^ |
Re: Form mitte mit maus Focussieren
Zitat:
E: das geht doch, ausser nach oben, da kann ma mit maus raus... aber damits geht muss ma den quelcode bisschen verändern, das darf dann net ganz beim verlassn sein
Delphi-Quellcode:
if Mouse.CursorPos.X < Form1.Left + 4 then
Form1.Left := Mouse.CursorPos.X - 4 else if Mouse.CursorPos.X > (Form1.Left + Form1.Width) - 5 then Form1.Left := Mouse.CursorPos.X - Form1.Width + 5; if Mouse.CursorPos.Y < Form1.Top + 4 then Form1.Top := Mouse.CursorPos.Y - 4 else if Mouse.CursorPos.Y > (Form1.Top + Form1.Height) - 8 then Form1.Top := Mouse.CursorPos.Y - Form1.Height + 8; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:27 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