Hallo Hawkeye219
auch wenn es jetzt blöd klingt, aber ich möchte (muss) meine eigene Collektion von Controls erstellen. Wird für mich im Nachgang einfacher, wenn alle meine Controls den gleichen Vorfahren haben. Das Moving/Sizing ist auch kein Problem. Hab ich schon alles zu meiner Zufriedenheit gelöst. Das Thema SnaptoGrid ist ja auch keine Gewalt. Hätte ich halt etwas schicker (wie beschrieben während der Bewegung). Somit stehe ich eigentlich nicht vor dem Problem der gesamten Lösung, sondern nur für ein "kleines Detail". ehrlich gesagt würde ich eher auf dieses Detail verzichten, als meine Kompo weg werfen und eine Fremdkompo verwenden.
Zitat von
_frank_:
die macht leider das snapToGrid erst, wenn das Control gedroppt wird.
evtl hat jemand eine Idee, wie man den Rahmen auch "snappen" kann.
Meine Versuche haben damals nicht funktioniert.
Gruß Frank
Und genau das ist im Moment mein Problem! Wie gesagt, mit meiner einfachen Lösung im Paint klappt das erstaunlicher weise mit der Größenänderung zur "Ziehzeit". Beim Moving halt erst beim Drop.
Ich habe das Gefühl, dass folgender Code nicht dazu führt, dass mein vererbtes Paint aufgerufen wird:
Delphi-Quellcode:
ReleaseCapture;
TWinControl(self).Perform(WM_SYSCOMMAND, $F012, 0);
Aber warum bei den anderen?
Delphi-Quellcode:
ReleaseCapture;
...
cps_LeftTop:
TWinControl(self).Perform(WM_SYSCOMMAND, $F004, 0);
cps_RightTop:
TWinControl(self).Perform(WM_SYSCOMMAND, $F005, 0);
cps_LeftBottom:
TWinControl(self).Perform(WM_SYSCOMMAND, $F007, 0);
cps_RightBottom:
TWinControl(self).Perform(WM_SYSCOMMAND, $F008, 0);
cps_Left:
TWinControl(self).Perform(WM_SYSCOMMAND, $F001, 0);
cps_Top:
TWinControl(self).Perform(WM_SYSCOMMAND, $F003, 0);
cps_Right:
TWinControl(self).Perform(WM_SYSCOMMAND, $F002, 0);
cps_Bottom:
TWinControl(self).Perform(WM_SYSCOMMAND, $F006, 0);
gruß oki