Steuerelemente mittig ausrichten bei vergrößerung der form

  • VB.NET

Es gibt 5 Antworten in diesem Thema. Der letzte Beitrag () ist von ErfinderDesRades.

    Steuerelemente mittig ausrichten bei vergrößerung der form

    Hey. Ich habe eine Form und oben eine Leiste, eine Progressbar um genau zu sein. Diese habe ich mittig ausgerichtet. Wenn ich aber nun die form maximire ist diese natürlich nciht mehr mittig. Wie sorge ich dadür, dass sie immer mittig bleibt?
    Benutze diverse Panels zur Gruppierung von mehreren Steuerelementen.
    Starte Deine Oberfläche und zieh an der unteren rechten Ecke, sieh, was passiert.
    Wenn es Dir nicht gefällt, ändere die Anchor-Eigenschaft und / oder die Zuordnung zu Panels.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Anchor benutze ich nie, weil bei komplexeren Layouts kann das nicht mehr Schritt halten.

    Obige Anforderung würde ich mit einem TableLayoutPanel lösen, welches .Dock.Top gedockt ist.
    Ich würde dem TLP eine Row geben, und 3 Columns, und in die mittlere Column die Progressbar plazieren, mit .Dock.Fill.

    Entweder allen TLP-Columns prozentuales Sizing-Verhalten einstellen, oder die mittlere Column auf einen absoluten .Width - Wert setzen.
    Hey,

    wenn ich das richtig verstehe, geht es hier doch nur um ein einziges Steuerelement, das bei einem Resize der Form repositioniert werden soll, oder? In diesem Fall sollte doch eine manuelle Neupositionierung im Resize-Event der Form ausreichen... Vertikal zentrieren lässt sich das Ganze ja relativ einfach mit

    VB.NET-Quellcode

    1. ProgressBar1.Location = New Point(CInt(Me.ClientSize.Width/2-ProgressBar1.Width/2), ProgressBar1.Location.Y)


    MfG
    Turtle10
    Resize-Code sollteman in .Net überhaupt nicht mehr schreiben müssen.

    Es gibt Docking, Anchoring, und 6 ContainerControls mit je verschiedenem Layout-Verhalten - ich habe noch nie erlebt, dass das nicht ausreicht, um ein perfektes Layout hinzuzaubern.

    Allerdings muß man sich mit diesem Instrumentarium beschäftigen (das macht Spaß - weil ist richtig schick! :) )