Ja, das war mir schon klar.
Nur was ich nicht verstehe ist, warum du deine wunderbare
OOP-Struktur mit einer globalen Variable zerschiessen musst?
Und mir ist noch etwas aufgefallen...
Die Elemente mussen doch alle einen Wert bekommen. Überschreibe doch den Konstruktor deiner Elemente mit einem eigenen, der dann auch gleich den Wert des Bauteils initalisiert.
Dann ist das Einrichten eines neuen Elementes einfacher.
aus
Delphi-Quellcode:
r := TResistor.Create;
r.ElementValue := 2200;
g.AddElement(r);
wird dann
g.AddElement(TResistor.Create(2200));
Über ElementValue kann man immer noch den Wert verändern.
Zur Zeit ist FElementValue nämlich nicht initalisiert. (wenn man ElementValue vergisst)
Dieses Vergessen geht über einen eigenen Konstruktor nicht!
MfG
Thorsten