Rectangle an Funktion übergeben

  • VB.NET

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

    Rectangle an Funktion übergeben

    Hey.

    Ich möchte eine Funktion erstellen, an die man ein Rectangle als Parameter übergibt.

    So hatte ich es gedacht:

    Quellcode

    1. Public Sub MoveUp(ByVal Rec As Rectangle)
    2. Rec.Location = New Point(Rec.Location.X, Rec.Location.Y - 5)
    3. End Sub


    Wenn ich es allerdings so aufrufe:

    Quellcode

    1. Dim Rec1 As New Rectangle(10, 10, 50, 50)
    2. Button:
    3. MoveUp(Rec1)


    passiert leider nichts. Das Rectangle bewegt sich nicht.
    Wie übergebe ich also ein Rectangle an die Funktion?

    Danke :)
    Willkommen im Forum.
    Rectangle ist eine Structure.
    Um die Werte in der Funktion zu ändern, musst Du das Rectangle ByRef übergeben, nicht ByVal.
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Häufig von mir verwendete Abkürzungen: CEs = control elements (Labels, Buttons, DGVs, ...) und tDS (typisiertes DataSet)
    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht in den Spekulatiusmodus gehen.
    Muss man das Rectangle nicht auch irgend wo hin zeichnen?
    "Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. Lehre einen Mann zu fischen und du ernährst ihn für sein Leben."

    Wie debugge ich richtig? => Debuggen, Fehler finden und beseitigen
    Wie man VisualStudio nutzt? => VisualStudio richtig nutzen
    @Crypt0x Ebenfalls: Willkommen im Forum. :thumbup:
    @mrMo für Testzwecke genügt die Ausgabe in die Console:

    VB.NET-Quellcode

    1. Console.WriteLine(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).
    VB-Fragen über PN / Konversation werden ignoriert!