![]() |
Re: Selected = False wenn Click außerhalb Komponente
Ja, das MouseMove ist falsch (wie ich bereits schrieb). Bei einer Bewegung verschindet das Teil mit einem Sprung Richtung NordWest aus dem Bildschirm raus. Debug mal dein MouseMove, dann siehst du was passiert!
Ob ich es so machen würde? Weis nicht. Hab noch nie sowas programmiert. Ich denke, daraus ein eigenes Objekt zu machen ist recht sinnvoll (Grafikprogramme brauchen nunmal viel RAM). Die Frage ist, ob man, wie es mein Vorschlag war, gleich ein TWincontrol draus machen muss. Die andere Möglichkeit ist eben ein TGraphicControl zu nehmen (was du ja ursprünglich mit TShape hattest). Ein TGraphiccontrol bekommt halt leider nicht solche Nachrichten wie CM_Exit, dafür verbraucht es auch weniger Ressourcen als ein TWincontrol. Was ich mir auch noch überlegt habe ist, ob dieses Verschieben und so nicht schon irgendwie in den TXXXControls mit implementiert ist. Ich habe ja gehofft, dass sich nochmal jemand anderes hier zu Wort meldet, aber anscheinend haben das so viele noch nicht probiert. Fazit: Ich würde das erstmal mit Twincontrol weiter verfolgen. Solange du unter 100 Objekten bleibst, dürfte das ok sein. |
Re: Selected = False wenn Click außerhalb Komponente
hmmm also ob ich da unter 100 objekten bleibe is die frage... mit dem programm werden später wahrscheinlich ganze produktionsketten dargestellt. d.h. es kann denke ich leicht passieren dass man auf mehr als 100 objekte kommt...
hmm jetzt versuch ich dass nochmal mit dem twincontrol und dem tcustomcontrol... was war da nochmal besser?? bzw. vorteile nachteile? danke |
Re: Selected = False wenn Click außerhalb Komponente
TCustomCtontrol ist die Erweiterung von TWinControl. die Erweiterung besteht im "Paint", was bei Tcustomcontrol möglich ist.
Schau dir mal die Hierarchien an: TObject -> TPersistant -> TComponent -> TControl -> TWincontrol -> TCustomControl oder für reine Grafik: TObject -> TPersistant -> TComponent -> TControl -> TGraphicControl Du musst dir etwa vorstellen das dann jedes deiner Objekte von der Hierarchie etwa einem Button ähneln: TObject -> TPersistant -> TComponent -> TControl -> TWincontrol -> TButtonControl -> TButton Über 100? Hmmm... Ich weis nicht, vielleicht ist auch der Link in Post #3 oder #4 interessant. Die Entscheidung kann ich dir nicht abnehmen. Hab ich zu wenig Erfahrung. |
Re: Selected = False wenn Click außerhalb Komponente
hmm also inzwischen klappt das schon so wie ich will... fast zumindest :)
aber: wenn ich objekte vergrößer oder verkleiner flackert dass total ?!? weisst du da ne lösung? merci |
Re: Selected = False wenn Click außerhalb Komponente
Da könnte das property doublebuffered (oder so ähnlich) helfen. Das kannst du mit dem selected zusammen setzen, damit nicht alle (unbenutzten) Objekte doublebuffered sind, weil das ja auch wieder Speicher benötigt.
|
Re: Selected = False wenn Click außerhalb Komponente
sehr gute idee :) hat funktioniert... :) danke!!!
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:28 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