AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Elemente aus TStringList in Laufzeit entfernen

Ein Thema von KetchUp · begonnen am 16. Nov 2018 · letzter Beitrag vom 25. Nov 2018
Antwort Antwort
KetchUp

Registriert seit: 16. Nov 2018
31 Beiträge
 
#1

AW: Elemente aus TStringList in Laufzeit entfernen

  Alt 22. Nov 2018, 21:14
Könnt ihr mir einen Tipp geben wie ich die Liste erstelle?

PS: Upps, wollte keinen Doppelpost machen.
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#2

AW: Elemente aus TStringList in Laufzeit entfernen

  Alt 23. Nov 2018, 10:11
Könnt ihr mir einen Tipp geben wie ich die Liste erstelle?

PS: Upps, wollte keinen Doppelpost machen.
Vocabulary:= TStringList.Create;

gruss
  Mit Zitat antworten Zitat
KetchUp

Registriert seit: 16. Nov 2018
31 Beiträge
 
#3

AW: Elemente aus TStringList in Laufzeit entfernen

  Alt 23. Nov 2018, 12:06
Vocabulary:= TStringList.Create;
Aber das hab ich doch schon.

Delphi-Quellcode:
 
  Vocabulary:= TStringList.Create;
  Vocabulary.LoadFromFile('Vocabulary.txt');

  RandomNumber:= random(Vocabulary.Count);
  L_RemainingWords.Caption:= 'Verbleibende Vokabeln: '+IntToStr(Vocabulary.Count);

  If GermanEnglish

  Then
    try
      for i:= 0 to Vocabulary.Count - 1 do
        Begin
          Vocab:= TVocab.Create;
          Vocab.English:= Vocabulary.Names[i];
          //Vocab.SolvedCount:= 0;
          Vocab.German:= Vocabulary.ValueFromIndex[i];
          Vocab.Repetitions:= RepititionValue[i];
          List.Add(Vocab);

          L_UnknownWord.Caption:= Vocab.English[RandomNumber];
          L_CorrectAnswer.Caption:= '';
        End;
      finally
    end
Brauche ich denn Vocab:= TVocab.Create; , List.Add(Vocab); und Vocab.SolvedCount ?

Ich müsste doch alles damit regeln können.
Delphi-Quellcode:
  type
    TVocab = record
    German, English: string;
    Repetitions: Integer;
  end;
  Mit Zitat antworten Zitat
DieDolly

Registriert seit: 22. Jun 2018
2.175 Beiträge
 
#4

AW: Elemente aus TStringList in Laufzeit entfernen

  Alt 23. Nov 2018, 12:17
Könnt ihr mir einen Tipp geben wie ich die Liste erstelle?

PS: Upps, wollte keinen Doppelpost machen.
Vocabulary:= TStringList.Create;

gruss
Es ist eine Liste gemeint, um die Records aufzunehmen.
  Mit Zitat antworten Zitat
KetchUp

Registriert seit: 16. Nov 2018
31 Beiträge
 
#5

AW: Elemente aus TStringList in Laufzeit entfernen

  Alt 23. Nov 2018, 14:03
Es ist eine Liste gemeint, um die Records aufzunehmen.
Dann ist es doch
Code:
List.Add(Vocab);
Aber wie deklarier ich das, sie enthält ja Strings und Integer-Werte?
  Mit Zitat antworten Zitat
DieDolly

Registriert seit: 22. Jun 2018
2.175 Beiträge
 
#6

AW: Elemente aus TStringList in Laufzeit entfernen

  Alt 23. Nov 2018, 14:06
Als aller erstes musst du verstehen, dass du deine TStringList nur brauchst, um TList zu befüllen. Danach brauchst du die TStringListe nie wieder. Alles weitere passiert über die TList wo du ja schon jetzt alle deine Vokabeln samt Zähler drin hast.
  Mit Zitat antworten Zitat
KetchUp

Registriert seit: 16. Nov 2018
31 Beiträge
 
#7

AW: Elemente aus TStringList in Laufzeit entfernen

  Alt 23. Nov 2018, 15:02
Die Liste funktioniert jetzt schon, ich kann sie aber nicht füllen.

Sie ist deklariert als:
var List: TList; Wenn ich ihr aber die Vokabeln zuweise sagt der Compiler "Incompatible types: Pointer and TForm2.TVocab"
List.Add(Vocab);
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#8

AW: Elemente aus TStringList in Laufzeit entfernen

  Alt 23. Nov 2018, 16:37
das geht ungefähr so:
Delphi-Quellcode:
type
  myrecord=engtext:string;
           gertext:string;
           Repetition:integer;
    end;

var
  pmyrecord=^myrecord;


.....
  new(pmyrecord);
  pmyrecord^.engtext:=Englischertext;
  pmyrecord^.gertext:=Deutschertext;
  pmyrecord^.Repetition:=3;

 liste.add(pmyrecord);
....

procedure ListFree;
var
  pmyrecord:^myrecord;
begin
  for i:=0 to liste.count-1 do begin
    pmyrecord:=liste.item[i];
    dispose(pmyrecord);
  end;
  liste.free; //der freeandnil falls auf Nil getestet wird
end;
ohne Gewähr da nur so runter getippt;

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#9

AW: Elemente aus TStringList in Laufzeit entfernen

  Alt 23. Nov 2018, 17:13
*entfernt*
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:58 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz