Petros - Do 04.10.12 16:05
Titel: Mit TImage Form bewegen Firemonkey
Hi delphi freunde ich weiß zwar nicht ob hier richtig fals nein bitte verschieben...
Jetzt zu meinem problem..
Ich will mit Firemonkey ein programm schreiben soweit alles super.
Nun hab ich ein bild (TImage) wenn mann die maus gedrückt hälte und es bewege soll sich die Form mit bewegen.
Mein ansatz war
VLC Anwendung
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23:
| procedure TForm1.Image1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin bewegen := True; positionx:=x; positiony:=y; end;
procedure TForm1.Image1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin if schieben = True then begin Form1.left := Form1.Left + x - positionx; Form1.Top := Form1.Top + y - positiony; end; end;
procedure TForm1.Image1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin Bewegen := False; end; |
Klappt in einer VLC anwendung super nur mit Firemonkey HD anwendung geht das leider nicht
da X, Y nicht als Integer sondern Single angegeben, ändere ich single in Integer wird diese nicht mehr im ereignisse angegeben.
Delphi-Quelltext
1: 2: 3: 4: 5:
| procedure TForm1.Image1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Single); begin
end; |
Lege ich eine Funktion an und lasse diese dann per MouseUp, MouseMove, MouseDown aufrufen verschwindet die form einfach in den hintergrund.
Ich hoffe es war verständlich ausgedrückt und hoffe Ihr habt evtl ne lösung.
Moderiert von
Narses: B- gegen highlight-Tag im Code ersetzt.