Dynamische Buttons Location

  • VB.NET

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

    Dynamische Buttons Location

    Hallo heute ist meine Frage wie kann ich überprüfen wenn ich einen Label hinzufüge ob an dieser stelle schon ein label ist?
    Das ist der Fast fertige code

    VB.NET-Quellcode

    1. Dim neueSorteButtonhin As New Button
    2. Dim neueSorteButtonweg As New Button
    3. Dim neueSorteAnzeige As New Label
    4. Dim neueSorteSorte As New Label
    5. Form1.Controls.Add(neueSorteAnzeige)
    6. Form1.Controls.Add(neueSorteButtonhin)
    7. Form1.Controls.Add(neueSorteButtonweg)
    8. Form1.Controls.Add(neueSorteSorte)
    9. neueSorteAnzeige.Text = Anzahl_Leiste.Text
    10. neueSorteButtonhin.Text = "Hinzufügen"
    11. neueSorteButtonweg.Text = "Entfernen"
    12. neueSorteSorte.Text = Sorte_Leiste.Text
    13. neueSorteSorte.Location = New Point(12, 62)
    14. neueSorteAnzeige.Location = New Point(88, 62)
    15. neueSorteButtonhin.Size = New Size(75, 23)
    16. neueSorteButtonweg.Size = New Size(75, 23)
    17. neueSorteButtonhin.Location = New Point(172, 62)
    18. neueSorteButtonweg.Location = New Point(253, 62)

    Das steht unter einem Button.Click event
    und die locations sollen sich dann beim hinzufügen nicht überschneiden sondern nach unten rutschen
    Danke schonmal
    Ansonsten geh alle relevanten Controls durch, nimm Location und Size und teste dasControl-Rect gegen das Ziel-Rect.
    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!
    Oder so:

    VB.NET-Quellcode

    1. Dim myRc As New Rectangle(10, 10, 50, 30)
    2. Dim rc As New Rectangle(Button1.Location, Button1.Size)
    3. If myRc.IntersectsWith(rc) Then
    4. ' hier nicht
    5. End If
    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!