BauerHeini Geschrieben 4. Februar 2020 Geschrieben 4. Februar 2020 Weiß jemand, wie man die Abmessungen eines Objektes in die Programmierung integrieren kann? local l = $("Gleis01").size[X] funktioniert nicht.
Goetz Geschrieben 4. Februar 2020 Geschrieben 4. Februar 2020 x ist ein Bezeichner und somit ein String. Außerdem ist es ein kleines x Diese beiden Schreibweisen funktionieren: local l = $("Gleis01").size["x"] local l = $("Gleis01").size.x
BauerHeini Geschrieben 4. Februar 2020 Autor Geschrieben 4. Februar 2020 Vielen Dank Goetz. Hat funktioniert
Goetz Geschrieben 4. Februar 2020 Geschrieben 4. Februar 2020 Hast du denn nur mit Freude festgestellt, dass es funktioniert? Oder hast du auch verstanden, warum es so (und nur so) funktioniert?
BauerHeini Geschrieben 5. Februar 2020 Autor Geschrieben 5. Februar 2020 Ehrlich gesagt habe ich es nur hingenommen. In den LUA-Anleitungen steht, dass ein Tabellenfeld eckigen Klammer angesprochen wird: example_table[2] = "Constipation" print(example_table[2]) --> Constipation
Goetz Geschrieben 5. Februar 2020 Geschrieben 5. Februar 2020 (bearbeitet) Okay. In Lua kann ein Tabellenfeld entweder durch eine Nummer oder durch einen Namen identifiziert sein. Beides schreibt man in eckige Klammern. Eine Zahl ist in diesem Fall eindeutig erkennbar. Aber Namen muss Lua von Variablen unterscheiden können. Deshalb muss man Namen als String angeben. Weißt du, was ein String ist? Tabelle ["x"] ist das Feld mit Namen x in der Tabelle. Tabelle[x] sucht nach einer Variablen namens x um ihren Inhalt (Zahl oder String) als Bezeichner für das Feld zu verwenden for x = 1, 10 do print(Tabelle[x]) end gibt nacheinander alle Felder der Tabelle von 1 bis 10 aus. Der Bezeichner hinter einem Punkt ist eine alternative, vereinfachte Schreibweise. Tabelle.x bedeutet also dasselbe wie Tabelle["x"] Die vereinfachte Schreibweise erlaubt keine Sonderzeichen, Leerzeichen, Satzzeichen etc. im Namen. Und (wichtiger noch!) sie erlaubt keine Variablen, welche die Bezeichner enthalten. Deshalb gibt es in Lua beide Schreibweisen. Bitte frag, wenn dir solche Dinge unklar sind. Man kann sich unmöglich alles merken. Erst recht nicht, wenn einem die Zusammenhänge fehlen. Programmiersprachen kann man nur lernen, indem man ihre Mechanismen versteht. Bearbeitet 5. Februar 2020 von Goetz
BauerHeini Geschrieben 5. Februar 2020 Autor Geschrieben 5. Februar 2020 Viele Dank für Deine Hilfe, Goetz. Man lernt immer (auch im hohe Alter) dazu.
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren
Du musst ein Benutzerkonto besitzen, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen.
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden