HI!
Zitat von
mimi:
nicht schlecht deine komponenten, doch leider habe ich im beispiel buttons zwei fehler gefunden:
einer fehler habe ich gefunden und das problem gelöst:
Delphi-Quellcode:
Procedure TForm3.UpdateList;
Var I:Byte;
Begin
With ListBox1 do Begin
Clear;
Count:=0;
For I:=1 to 9 do Begin
If FileArray[I]='' then Break;
Items.Add(' '+IntToStr(I)+' '+Form2.ShortString(45,FileArray[I]));
Count:=Count+1;
// Inc(Count);
End;
End;
SetButtonFlags;
End;
du kannst nicht überall inc verwenden(warum weiß ich nicht)
und beim zweiten fehler finde ich die ursache leider nicht:
Zitat:
[Fataler Fehler] Das Programm oder die
Unit 'Buttons' ruft sich selbst wieder auf
Sorry, ich habe extra darauf hingewiesen das die ColorText-Beispielprogramme in Delphi 3.0 geschrieben wurden. Das sin Inkompatibilitäten zwichen 3.0 und 7.0. Ich hatte leider noch keine Zeit alle Demos in 7.0 neu zu überarbeiten (Kommt noch, versprochen!). Und zwar ist 'Count' eine private Variable aus Form3, oben steht aber 'With ListBox1 do Begin...'. Und bei Delphi 7.0 hat nun eine ListBox eine neue Eigenschaft 'Count'. Daran liegt das. Deswegen kann man keinen 'Inc' verwenden, denn eine Eigenschaft kann man mit 'Inc' und '
Dec' nicht ändern! Der Compiler denkt es wäre die Eigenschaft 'Count' der Listbox gemeint, gemeint ist aber die Variable aus Form3! Deswegen hilft es auch nix wenn du da schreibst 'Count:=Count+1', das läßt sich zwar kompilieren, ist aber falsch!
Probier es doch mal so:
Delphi-Quellcode:
With ListBox1 do Begin
Clear;
Form3.Count:=0;
For I:=1 to 9 do Begin
If FileArray[I]='' then Break;
Items.Add(' '+IntToStr(I)+' '+Form2.ShortString(45,FileArray[I]));
Inc(Form3.Count);
End;
End;
SetButtonFlags;
Das sollte in Delphi 7.0 funktionieren.
Zum zweiten Fehler : Sorry, keine Ahnung woran dies liegt. Warte bitte bis ich die Demos in 7.0 neu kompiliert habe, den Fehler finden wir ganz sicher auch noch. Aber Zeit ist leider ein begrenztes Gut!
Ich werd mich gleich zuhause an die Arbeit machen, aber es wird wohl ein paar Tage dauern...
Ansonsten: Danke für die Fehlermeldung!
----------------------------------------------------------------------------------------------------
Zum zweiten Fehler: Delphi 3.0 ignoriert den Namen des Programmes der als erste Zeile im Hauptprogramm steht komplett, Delphi 7.0 nimmts wesentlich genauer. Es gibt tatsächlich eine
Unit 'Buttons', und deshalb darf bei Delphi 7 das Programm nicht 'Buttons' heißen, Kicher! Hab das Buttons-Programm in Delphi 7 deshalb umbenannt, in 'TocsButtons'! Das schluckt der 7.0 Compiler.
So, unten im Anhang: Beispeile für ColorText für Delphi 7.0!
Da man an jede Nachricht nur maximal 4 Anhänge machen kann war es nicht möglich die Archieve an den ersten Beitrag anzuhängen!
Grüße von TOC!