Entwickler-Ecke
Grafische Benutzeroberflächen (VCL & FireMonkey) - Position eines Buttons bestimmen und verändern
is44c - Fr 23.12.05 21:57
Titel: Position eines Buttons bestimmen und verändern
Moin,
ich habe mir mal gedacht ich versuche ein MouseMove ereigniss zu basteln, wobei, wenn ich mit der maus über button gehe, das dieser unter dem mauszeiger herausspringt und an einer neuen Position bleibt!
Ich habe keine ideen da ich unter eigenschaften nichts finde was mit Postion zu tun hat oder ich kann nur nicht gut genug suchen!
Danke für die antworten die kommen!
Is44c
Christian S. - Fr 23.12.05 22:00
Hallo!
Die Position eines Buttons kannst Du mittels Top und Left abfragen bzw. auch setzen.
Grüße
Christian
UGrohne - Fr 23.12.05 22:00
Es gibt das Event OnMouseMove bei den Buttons. Dieses wird ausgelöst, sobald sich der Mauszeiger über dem Button bewegt. Hier erfährst Du also wenn der Zeiger auf dem Button ist. In diesem Event kannst Du ihn dann verschieben, indem Du die Eigenschaften Top und Left (die den Abstand vom oberen und linken Rand des ParentControls - also hier des Formulars - in Pixeln angeben) veränderst.
is44c - Fr 23.12.05 22:59
Also ich habe das jetzt so versucht
Delphi-Quelltext
1: 2: 3: 4: 5:
| procedure TForm1.Test(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin Left := 400; Top := 333 end; |
aber wenn ich das mache dann springt die ganze TForm und nciht nur der Button auf der Form!
Moderiert von
Christian S.: Code- durch Delphi-Tags ersetzt
Born-to-Frag - Fr 23.12.05 23:01
is44c hat folgendes geschrieben: |
Also ich habe das jetzt so versucht
Quelltext 1: 2: 3: 4: 5:
| procedure TForm1.Test(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin Button1.Left := 400; Button1.Top := 333 end; |
aber wenn ich das mache dann springt die ganze TForm und nciht nur der Button auf der Form! |
;)
Corback - Di 18.04.06 15:54
also ich habe das jetzt auch so probiert und der Button spring ja auch prima weg, nur leider springt er nur einmal weg und dann bleibt er stehen. was muss ich hier Einsetzen damit der Button mehrmals wegspringt?
mfg Corback
DelphiAnfänger - Di 18.04.06 15:58
Delphi-Quelltext
1: 2: 3: 4: 5:
| procedure TForm1.Test(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin Button1.Left := Random(400); Button1.Top := Random(333); end; |
Corback - Di 18.04.06 16:00
danke
jetzt funktionierts einwandfrei ;)
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 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!