m1sc hat folgendes geschrieben : |
auch wenns nicht gehen sollte in delphi |
eigentlich geht alles mit Delphi, wenn auch manchmal sehr umständlich.
ich habe dir zwar bereits geholfen, aber dar dir einige Grundlagen fehlen hier nochmal ein paar Grundlegende Infos:
Jede Komponente besitzt Ereignisse.
Ereignisse sind sozusagen Proceduren die auf etwas ausgelöst werden.
Beispiele:
OnClick: Wird auf Klick auf die Komponente ausgelöst
OnChange (bei TEdit vorhanden): Wenn der Inhalt vom Edit geändert wird, wird es ausgelöst
OnKeyDown: Wenn eine Taste gedrückt wird, wird sie ausgelöst
die Ereignisse besitzten Parameter wie Sender vom Typ TObject
Sender ist das Object, dass die Procedure ausgelöst hat, wenn du auf das Edit klickst ist das Object das Edit !
Da es auch von einem Label ausgelöst worden könnte, ist es vom Typ TObject und nicht vom Typ TEdit !
deshalb, falls du mit dem Sender arbeiten willst musst du es erst "casten" (also umwandeln bzw sagen was es ist)
bsp.
Delphi-Quelltext
Bei nichtsichbaren Kompoenten wie dem Timer wird das Ereignis vom Timer selbst alle X-Sekunden ausgelöst.. X = Timer.Interval
Ich denke, dass ist erstmal das was du zu "Ereignissen" wissen solltest...
Nachtrag: Den Inhalt der *.txt-Datei in einen String einlesen
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17:
| var f: Textfile; Ergebnis: string; ZeilenInhalt: String; begin Ergebnis := ''; Assignfile(f, Dateiname); try reset (f); while not eof(f) do begin readln(f,ZeilenInhalt); Ergebnis := Ergebnis + ZeilenInhalt; end; finally Closefile(f); end; end; |
Nachtrag 2: Auf ein bestimmtes Wort checken:
Falls du nur wissen möchtest, ob es vorkommt, dann kannst du folgendes machen
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40:
| if pos(Wort, DateiInhalt)>0 then else length(Wort)+pos(Wort, DateiInhalt)-1; if pos(Wort, DateiInhalt)>0 then begin end else begin end;
if pos(' '+Wort+' ', DateiInhalt)>0 then begin end else begin end; if pos(' '+Wort, Dateinhalt)>0 then if pos(' '+Wort, DateiInhalt)+length(' '+Wort)=length(DateiInhalt) then begin
end else if pos(' '+Wort+' ', DateiInhalt) then begin end; |
Bedenke: vor einem ELSE kein Simikolon (
