![]() |
Panel mit der maus bewegen(c++)
hi leutz
ich möchte unter c++ ein Panel mit der maus bewegen aber wenn ich es anklicke verschwindet es wisst ihr was ich was gemacht habe?
Delphi-Quellcode:
int px, py;
void __fastcall TForm1::Panel4MouseMove(TObject *Sender, TShiftState Shift, int X, int Y) { if (Shift.Contains(ssLeft)) {Panel4->Top = Shape1->Left + X - py; Panel4->Left = Shape1->Top + Y - px;}; } |
Re: Panel mit der maus bewegen(c++)
schon ok
hab den fehler gefunden man darf kein shape benutzen sondern das selbe panel in diesem fall panel4 |
Re: Panel mit der maus bewegen(c++)
void __fastcall TForm1::Panel4MouseMove(TObject *Sender, TShiftState Shift,
int X, int Y) { if (Shift.Contains(ssLeft)) {Panel4->Left = Panel4->Left + X - px; Panel4->Top = Panel4->Top + Y - py;}; } |
Re: Panel mit der maus bewegen(c++)
:(
Alles schön und gut, aber wie funktioniert das ganze denn bei Delphi??? Bitte um schnelle Antwort......... :!: :!: :!: :( |
Re: Panel mit der maus bewegen(c++)
Für Delphi:
Delphi-Quellcode:
procedure TForm1.Panel1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer); var Punkt: TPoint; begin if ssLeft in Shift then begin GetCursorPos(Punkt); Panel1.Top := Punkt.y - Top - Panel1.Height div 2; Panel1.Left := Punkt.x - Left - Panel1.Width div 2; end; end; |
Re: Panel mit der maus bewegen(c++)
Vielen Dank; das hat mir schon sehr geholfen.
Geht es auch noch ohne, das man das Panel anklicken muss, dh es automatisch mit der Maus mitgeht?? Wenn nicht, ist auch nicht schlimm............... :) |
Re: Panel mit der maus bewegen(c++)
Achso; nochwas: Kann man dann auch mit einem Mausklick mehrere Panels gleichzeitig bewegen?
Das wär echt noch der Hammer Sorry, dass meine Fragen sehr speziell sind, aber vielleicht weiß es ja jemand! :wink: |
Re: Panel mit der maus bewegen(c++)
Zitat:
Delphi-Quellcode:
Und optional (Panel folgt der Maus damit ständig) ...
procedure TForm1.Panel1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer); var Punkt: TPoint; begin GetCursorPos(Punkt); Panel1.Top := Punkt.y - Top - Panel1.Height div 2; Panel1.Left := Punkt.x - Left - Panel1.Width div 2; end;
Delphi-Quellcode:
procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer); var Punkt: TPoint; begin GetCursorPos(Punkt); Panel1.Top := Punkt.y - Top - Panel1.Height div 2; Panel1.Left := Punkt.x - Left - Panel1.Width div 2; end; |
Re: Panel mit der maus bewegen(c++)
Vielen Dank; vielleicht hab' ich noch weitere Fragen.............. :wink:
|
Re: Panel mit der maus bewegen(c++)
Noch ne Frage!
Ist es möglich, die "Panel-Steuerung" mit der Maus erst durch einen best. Tastendruck zu aktivieren, also dass man vorher noch die Maus "so alleine" hat, ohne das einem das Panel folgt? Danke schonmal............ :| |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:09 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 by Thomas Breitkreuz