Globale Variablendeklaration klappt nicht

Hallo,

bin am verzweifeln, weil ich mein Programm aufrumen will. Aktuell ist alles im Contral Serial1.DataAvailable untergebracht und wird zu unbersichtlich. Da ich die Daten global verfgbar machen mchte, habe ich diese in Module1 als Property global deklariert.
Trotzdem ist die Variable = 0 (nicht Nil) auerhalb der Serial1.DataAvailable. Wieso? Was ist falsch daran?

Vielleicht zwei mit gleichem Namen?
Also bitte kein dim im code wenn der Name im module global definiert ist.

Nein. Ich habe alle Variablen von Anfang an in den Properties deklariert. Von da aus dann in die Properties des Moduls verschoben. Geht nicht. Dann neue Variablen angelegt. Andere Variablen verwendet. berall das gleiche…
Jetz auch alle Dim aller weiteren lokaler/privater Variablen eleminiert. Erfolglos…

Irgendwo wird das Objekt neu Angelegt (Dim/ReDim -1) oder ein 0-Wert zugewiesen, anders kann ich mir das nicht erklren.

Mir ist nicht ganz klar, was du tust, was du erwartest und was stattdessen passiert. Könntest du das Problem etwas genauer beschreiben?

@ Bogun: ich möchte Variablen global deklarieren. Ich kann diese aber nur irgendwo in der app beschreiben (hier serial.event). Ausserhalb des Events sind die Variablen = 0

Ich habe mir gerade ein kleines Programm geschrieben. Die Variable A wird in einem Modul global deklariert. In Window1 verändert und im Window2 auf Knopdfruck im Titel anzeigen lassen. Das funktioniert einwandfrei!

Dann diese Variable in mein Programm übertragen und das Gleiche angelegt. Funktioniert nicht mehr!
Die Variable A wurde noch nie verwendet. Kann es etwas mit der kompletten App zu tun haben?

Ich nutze Linux! (Mint Tessa und Xojo19r1, alles aktuell)
Seltsam: Anfang April war das Projekt bei ca. 237 kB, Ende April schlagartig bei 11,4 MB. Wo der Unterschied ist weiß ich nicht. Habe keine Bilder, Hintergründe oder sonstige Dateien hinzugefügt. Kann man die APP irgendwie “defragmentieren” lassen?

Das einzige, was ich mir vorstellen kann, ist in der Tat, das von irgendwo in der App auch auf eine Variable dieses Namens zurückgegriffen wird. So wenig empfehlenswert globale Variablen sind, von irgendwelchen Problemen damit (außer den global-immanenten) habe ich noch nicht gehört.
Was passiert denn, wenn du den Scope einengst und nur mit vollem Namespace auf die Variablen zugreifen kannst? Also .?

Edit: Und was bedeutet “Außerhalb des Events sind die Variablen = 0”? Wo und wann werden sie denn zurückgesetzt?

Vielleicht besteht ja mal Interesse an dem Xojo Training in Köln teil zu nehmen?
und der Konferenz vielleicht?

Das ist alles sehr mysteriös.
Ich lege IMMER neue Variablen global an. Da gibt es keine Verwechselungen. Diesmal: Module1.ABC = 5
In einem TimerEvent wird Module1.ABC im Title angezeigt! Hurra!
Das geht sogar ohne Module1.
In einem anderen TimerEvent aber nicht. DAS ist anscheinend der Fehler. Aber warum?
Beide TimerEvents sind identsch. (Auch beide Public)

@Christian ein Trainig wäre nicht schlecht. Aber dazu müssten diese Kinderkrankheiten weg. Unter Linux läuft Xojo grausig. Ich könnte Euch garnicht folgen, weil jeder Klick zig Sekunden dauert.

Also es funktioniert! Variablen in eigene Module und alles, auch die Timer, auf Public, bzw. global einstellen.
Christian, gibt es die Möglichkeit meinen Quellcode untersuchen zu lassen?
Zwischen zwei meiner Versionen mit geringen Änderungen hat sich die Größe verzwanzigfacht und wird immer noch langsamer.
Drag and drop ist quälend langsam (> 2 sec)!

Vielleicht engagierst du mal @Ulrich Bogun für einen Blick drüber…