Kurioses Eachin Problemchen

Übersicht BlitzMax, BlitzMax NG Beginners-Corner

Neue Antwort erstellen

AnniXa

Betreff: Kurioses Eachin Problemchen

BeitragMi, Nov 03, 2010 9:44
Antworten mit Zitat
Benutzer-Profile anzeigen
Huhu, ich hab ein komisches problem, und zwar handelt es sich um folgenden code:

BlitzMax: [AUSKLAPPEN]
 
Print "inhaltmenge:" + Self.SpecialList.Count()
For Local ActObject:GuiObject = EachIn Self.SpecialList
Print "yo ich machs!"
ActObject.Aktiv = 0
Next


diese stückchen kot (ja mit k) printet folgendes aus:

"inhaltmenge:6"

es wird aber nicht "yo ich machs!" geprintet, sprich der inhalt der for eachin schleife wird nicht ausgefürt obwohl sich wie vorher geprüft definitiv einträge in der liste befinden.

An vielen anderen stellen hab ich es genauso gemacht und es funktionierte bisher immer Prima.

Ein versuch das mit "DebugStop" genau zu untersuchen endet kurios:
erst verkrampft es ewig auf der "Print "inhaltmenge:" + Self.SpecialList.Count()" zeile (egal ob mit StepIn oder nicht) und dann passiert nichts mehr.

Achja, die liste wird mit CreateList(), erstellt.

Weis jemand woran dies liegen könnte?
|moonForge|
Ich bin Pokémon Meisterin seit 1998!

FireballFlame

BeitragMi, Nov 03, 2010 13:33
Antworten mit Zitat
Benutzer-Profile anzeigen
Du hast vermutlich den falschen Datentyp genommen und die Objekte in deiner Liste lassen sich alle nicht nach GuiObject casten. Dann werden die von EachIn ignoriert.
PC: Intel Core i7 @ 4x2.93GHz | 6 GB RAM | Nvidia GeForce GT 440 | Desktop 2x1280x1024px | Windows 7 Professional 64bit
Laptop: Intel Core i7 @ 4x2.00GHz | 8 GB RAM | Nvidia GeForce GT 540M | Desktop 1366x768px | Windows 7 Home Premium 64bit

Hummelpups

BeitragMi, Nov 03, 2010 13:55
Antworten mit Zitat
Benutzer-Profile anzeigen
Code: [AUSKLAPPEN]
For Local obj:Object=EachIn list
   Print TTypeId.ForObject(obj).name()
Next



Mach aus deinem Code mal ungefähr sowas:
Code: [AUSKLAPPEN]
Print "inhaltmenge:" + Self.SpecialList.Count()

For Local ActObject:Object= EachIn Self.SpecialList
   Print TTypeId.ForObject(ActObject).name()
   TGuiObject(ActObject).Aktiv = 0
Next
blucode - webdesign - Ressource - NetzwerkSim
BlitzBasic 2D - BlitzMax - MaxGUI - Monkey - BlitzPlus

AnniXa

BeitragMi, Nov 03, 2010 14:50
Antworten mit Zitat
Benutzer-Profile anzeigen
hm alle objecte in der liste waren "extends" von GuiObject,
ich hatte es auch versucht mit:

BlitzMax: [AUSKLAPPEN]
For Local ActObject:Object= EachIn Self.SpecialList
Local guiob:guiobject = GuiObject(ActObject)
...


Da dies da gleiche resultat erzielt hatte, dachte ich nicht das es daran lag Sad

Nunja nun hab ich einfach eine andere liste verwendet (eine die global ist) und nun geht es wieder.
Verhalten sich listen anders wenn sie mit CreateList() oder mit = new Tlist erstellt wurden?
|moonForge|
Ich bin Pokémon Meisterin seit 1998!

Thunder

BeitragMi, Nov 03, 2010 16:44
Antworten mit Zitat
Benutzer-Profile anzeigen
Nein, New TList und CreateList sind in dem Fall ident, wie der Code aus brl.linkedlist zeigt:
BlitzMax: [AUSKLAPPEN]
Function CreateList:TList()
Return New TList
End Function


Aber zur ursprünglichen Frage kann ich leider nichts beitragen, weil der Code für mich absolut korrekt aussieht.

mfg Thunder
Meine Sachen: https://bitbucket.org/chtisgit https://github.com/chtisgit

Neue Antwort erstellen


Übersicht BlitzMax, BlitzMax NG Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group