Hallo GUI-Spezialisten, habe wieder mal ein kleines Mathematik Problemchen: Ich benötige für ein GUI eine Art Container / Panel oder Usercontrol das "inheritable" ist, und sich per Maus Resizen (und Draggen) lässt. Eigentlich ganz einfach - dachte ich, und habe mich nach entsprechenden Beispielen umgesehen, allerdings ohne Erfolg. Dann begann ich selber eine Usercontrol zu basteln, und komme nun mit diversen Situationen des Resizen´s noch nicht zurecht. Das Resizen nach 'Unten' und nach 'Rechts' sind kein Thema, auch diagonal nach 'Unten+Rechts' klappt ganz gut, und ist sehr Simpel. Nur die Richtungen 'Oben' und 'Links' und die restlichen Diagonalen bekomme ich nicht sauber und anständig hin, wie man das von üblichen Resize-Methoden kennt oder erwartet. Mein bisherigen angefangenen Test habe ich mal angehängt - Er ist von der Struktur her bestimmt nicht optimal, und die Comments etc sind nicht ganz korrekt... ;-) Es geht um den grauen Kasten namens 'SizeableDraggable', dessen Kanten und Ecken mit einer Resize-Funktion ausgestattet werden sollen. Vielleicht hat ja jemand von euch schon einmal so eine Usercontrol gebastelt, und kann mir diese zur Verfügung stellen, oder mir ein gutes (Code-) Beispiel (aus dem Netz) Posten, oder mir auf die Sprünge helfen !? Ich danke euch schon mal für die Mühen! Gruß TS
Habe es nochmal überarbeitet, aber sauberer bekomme ich es komischerweise nicht hin. Wenn mir jemand dabei helfen könnte, diese Ruckler und Zuckerer heraus zu bekommen, sowie paar Bugs zu beseitigen wäre ich sehr dankbar. Ich bin mit meinen Kenntnissen am Ende, und weiß diesbezüglich nicht mehr weiter. Und Nein - Ich möchte kein WPF verwenden. ;-) Timmey S. schrieb: > eine Art Container / Panel oder Usercontrol das "inheritable" ist, Bestimmt wäre eine Class, die sich auf alle Controls anwenden lässt, besser. Mir fehlt allerdings der Richtige Ansatz um das sauber zu lösen. Eventuell weiß einer von euch weiter !? Gruß, TS
hast Du das mal auf einem anderen Rechner ausprobiert? ich habe jetzt gerade mal das obere Projekt gedownloaded und das läuft ohne ruckeln und zuckeln... was genau stört Dich nun? der unübersichtliche code? ruckeln welches du bei dir auf dem PC hast? die übersicht in der SizeableDraggable.vb?
Dankeschön für deine Rückmeldung. Habe es gerade an einem anderen PC getestet der etwas schneller ist. Dort läuft es wirklich besser. Dennoch hat das ganze noch nicht wirklich viel mit einer ordentlichen Resize-Funktion zu tuhen. christoph schrieb: > habe jetzt gerade mal das obere Projekt gedownloaded Das obere war so weit fertig "implementiert", dass das Resizen an den äußeren Kanten unten und rechts läuft (Dort, wo man "normalerweise" Resized), die anderen Seiten waren (noch) ohne Funktion, da sich das Framework merkwürdig verhalten hatte, und ich den Code-Part wieder entfernt hatte. Wenn man die Version aus dem zweiten Post nimmt, und z.B. diagonal oben links Resizen will, kommen ständig Ruckler und Patzer / bzw. Fehler, die ich leider nicht beseitigen kann. Mein Ziel ist, Controls ähnlich handhaben zu können, wie im Design-Mode der IDE. Ich habe gerade die Glyphs-Klasse gefunden, die genau für diesen Zweck ziemlich interessant ist. Allerdings gibt es die (anscheinend) erst seit dem 4.5er Framework, dass ich nicht benutzen kann. Wenn jemand versteht und nachvollziehen kann was ich meine, und jemand eine Lösung zur Hand hat, wäre ich wirklich dankbar !!! ^^ Gruß, TS
Timmey S. schrieb: > Das Resizen nach 'Unten' und nach 'Rechts' sind kein Thema, auch > diagonal nach 'Unten+Rechts' klappt ganz gut, und ist sehr Simpel. Nur > die Richtungen 'Oben' und 'Links' und die restlichen Diagonalen bekomme > ich nicht sauber und anständig hin 'Oben' und 'Links' sollten das gleiche sein wie 'Unten' und 'Links' -- allerdings kombiniert mit einem vorher stattfindenden Verschieben des gesamten Fensters nach Oben bzw. Links. Das aber ist nur relevant, wenn die im Fenster enthaltenen Elemente ihre Positionen nicht relativ zum enthaltenden Fenster, sondern absolut beziehen.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.