Access-o-Mania

Access-Forum (Deutsch/German) => Access Programmierung => Thema gestartet von: Mero am April 30, 2022, 18:26:34

Titel: Label.Move mit Syntax Error
Beitrag von: Mero am April 30, 2022, 18:26:34
Hallo,

Me.lblTest1.Move (2000) = OK
Me.lblTest1.Move (2000,,,) = Syntax Error (obwohl MS schreibt, leere Positionen werden ignoriert)
Me.lblTest1.Move (2000,700,600,300) = Syntax Error
Me.lblTest1.Move (2000, 700, 600, 300) = Syntax Error
Alles mit ";" statt "," = Syntax Error
Das Ganze mit einer TextBox = Syntax Error

Hat jemand eine Idee, was hier los ist?
Titel: Re: Label.Move mit Syntax Error
Beitrag von: MzKlMu am April 30, 2022, 19:21:32
Hallo,
Du verwendest den Befehl falsch. Die Klammern sind falsch und führen zum Fehler. Ein Wert in Klammer spielt keine Rolle.

Me.lblTest1.Move (2000) = OK, aber Klammerpaar überflüssig
Me.lblTest1.Move 2000 = OK
Me.lblTest1.Move 2000, 700, 600, 300 = OK
Me.lblTest1.Move 2000, , 600, 300 = OK

PS:
In VBA sind die Trennzeichen grundsätzlich Komma, niemals Semikolon.

PS2:
Zum Verschieben von Feldern und Labels würde man eher Left, Top, Width, Height verwenden.
Move ist mehr für ein ganzes Element gedacht. Wobei ich gar nicht weis, ob Move für Felder/Labels überhaupt funktioniert.
Titel: Re: Label.Move mit Syntax Error
Beitrag von: Mero am April 30, 2022, 20:15:16
Danke Klaus!

Ich benutze .Top in einer For Each Schleife zum Verschieben einiger TextBoxen, wenn ein bestimmtes Objekt auf visible gesetzt wird.

Mit dem .Move probiere ich gerade rum, ob ich das zur Umgruppierung nehme, wenn das Formular von anderer Stelle aus aufgerufen wird.

Gruß Stefan
Titel: Re: Label.Move mit Syntax Error
Beitrag von: markusxy am April 30, 2022, 20:53:13
Zitat von: Mero am April 30, 2022, 18:26:34call Me.lblTest1.Move (2000, 700, 600, 300)

Wenn du ein call verwendest, kann man die Klammern stehen lassen.
Ist ein recht seltsames Verhalten des Compilers, aber ist halt so.

Zum Merken: Bei Funktionen werden Klammern verwendet, ansonsten werden sie weggelassen.