Entwickler-Ecke
Sonstiges (Delphi) - Fenster ziehen, Mauskoords speichern
Ecthelion - So 15.12.02 11:44
Titel: Fenster ziehen, Mauskoords speichern
Hallo,
1. Wie muss eine Prozedur aussehen, mittels der der User ein Fenster auf dem Bildschirm festlegen kann, indem er nur die linke obere Ecke festlegt, dann die linke untere festlegt und der Rest des Rechtecks sich anhand einer Berechung von selbst aufzieht?
2. Alternativ dazu wäre es auch nett, wenn der User nur einmal klickt und dann mittels Mausbewegung links bzw. rechts die linke Kante des Fensters vergrößert bzw. verkleinert (Klickpunkt = Mittelpunkt der Kante), während sich der Rest mal wieder selbst aufspannt (oder auch nicht, das ist eigentlich egal).
Danke
Aya - Di 17.12.02 06:40
Hi,
Also, erstmal... wenn du nur die linke obere und die linke untere ecke hast, hab ich keine ahnung wie du daraus ein rechteck konstruieren willst, daher geh ich mal von aus du hast dich verschrieben und meintest, linke obere und rechte untere ecke :roll:
In dem fall geht es einfach so:
Quelltext
1: 2: 3:
| var LX, LY: Integer; //LinksOben Koordinaten RX, RY: Integer; //RechtsUnten Koordinaten |
und dann einfach das Form halt erstellen...
Quelltext
1: 2: 3: 4:
| NewForm.Left:=LX; NewForm.Top:=LY; NewForm.Width:=RX-LX; NewForm.Height:=RY-LY; |
fertig... das gleiche auch mit "klicken"... mußt halt einfach LX etc die MausPosition zuweisen (Mouse.CursorPos.X/Y)
Au'revoir,
Aya
Ecthelion - Di 17.12.02 18:26
Danke. Das mit links oben und links unten war schon überlegt, spielt aber an sich keine Rolle im Moment.
Wie mach ich das, dass er sich erst bei Aufruf einer Prozedur überhaupt um die Mauskoordinaten schert und dann, wenn ich 2mal geklickt hab, wieder ins Hauptprogramm zurückkehrt?
Also: Button zum Aufruf, dann Minimierung des Programmfensters, 2 Klicks, zurück ins Programmfenster und die beiden Punkte sind gespeichert; optional das Ziehen eines Rechtecks, wobei sich die Breite nämlich als Vielfaches der entsprechenden Höhe ergeben soll [Verständnis] oder eben einfach nur so, dass nach dem ersten Klick ein Strich in die Richtung des Mauspfeils gezogen wird, vom ersten Punkt aus. An der Stelle gleich dieses: wie setze ich die X-Koordinate konstant, so dass die Maus nur auf einer Linie gezogen werden kann?
Danke.
Ecthelion - Di 07.01.03 16:26
bump
Noch was: 1. Klick speichert Koordinaten in einer, 2. Klick in andrer Variable, während die beiden noch nich da sind soll das Programmfenster im Hintergrund sein
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!