Bei kleinerem Bildschirm die Controls automatisch anpassen

  • VB.NET

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

    Bei kleinerem Bildschirm die Controls automatisch anpassen

    Also ich habe folgendes Problem:

    Ich habe mal einen simplen html Editor gebastelt und er startet maximiert. Auf der linken Seite ist eine Richtextbox und auf der rechten ein Webbrowser Control. Wenn ich das ganze nun auf einem Computer mit kleinerem Bildschirm teste schiebt sich der Webbrowser über die Richtextbox weil die Grösse ja bleibt. Ich würde nun gerne wissen wie ich es hinbekomme das auf kleineren Bildschirmen das Webbrowser Control sich an die neue Grösse anpasst. Ich habe mir überlegt das es ja mit simpler Prozentrechnung funktionieren müsste.
    Also habe ich geschrieben:

    VB.NET-Quellcode

    1. Dim prozent As Integer = Val(WebBrowser1.Width) * 100 / Val(Me.Width)



    Da bekomme ich auch die korrekte Prozentzahl raus. Dann habe ich im Form SizeChanged Event geschrieben:

    VB.NET-Quellcode

    1. WebBrowser1.Width = Val(prozent) * Val(Me.Width) / 100



    Also müsste bei einer anderen Formgrösse theoretisch die Breite des Webbrowser Controls angepasst werden. Doch am Ende ist der Webbrowser dann Mini klein. Ich habe mir das ganze dann mal in einer Textbox anzeigen lassen.

    VB.NET-Quellcode

    1. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    2. TextBox4.Text = Val(WebBrowser1.Width) * 100 / Val(Me.Width)


    VB.NET-Quellcode

    1. Private Sub Form1_SizeChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.SizeChanged
    2. WebBrowser1.Width = Val(TextBox4.Text) * Val(Me.Width) / 100


    Wenn ich das SizeChanged Event lösche kommt in der Textbox ein Wert von 56 raus (also die korrekte Prozentzahl) Wenn ich das SizeChanged Event stehen lasse kommt in der Textbox auf einmal 2 raus. Daraus schliesse ich das die Grösse der Form vor dem Load Ereignis schon geändert wird. Aber das wird mir langsam zu hoch. 8|

    Habt ihr ne Lösung wie ich das hinbekommen kann?
    Mach n neues Projekt und pack ein paar Controls drauf und spiel mal mit der Dock- und der Anchor-Eigenschaft der Controls herum.