Hallo Experten,
ich hatte einen Fehler im Programm. Delphi 2009 war zur Ursache trotz Laufzeitfehler:Überlaufprüfung=true
recht schweigsam. Aber das Programm stürzte ab. Gelegentlich.
Nach der Übersetzung in Delphi5 kam der Hinweis zur Laufzeit:
Der Index der Liste überschreitet das Maximum (0)
Schuld war eine Listbox die ich auf das letzte Element scrolle,
mit dem Code der jetzt auskommentiert ist, seit heute
über Perform(WM_VSCROLL,SB_BOTTOM,0).
Keine Fehler mehr.
Delphi-Quellcode:
ObserverScreen.ListBox_inputs.Items.Add(msg);
ObserverScreen.ListBox_inputs.Perform(WM_VSCROLL,SB_BOTTOM,0);
//ObserverScreen.ListBox_inputs.Itemindex:=ObserverScreen.ListBox_inputs.Items.Count-1;
//ObserverScreen.ListBox_inputs.Selected[ObserverScreen.ListBox_inputs.Items.Count-1]:=false;
Schön so.
Aber ich verstehe es nicht.
Weder wo der Fehler lag, noch warum Delphi 2009 es nicht gepeilt hat.
Hat jemand eine Idee?