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
Seite 9 von 11   « Erste     789 1011      
KetchUp

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

AW: Elemente aus TStringList in Laufzeit entfernen

  Alt 23. Nov 2018, 15: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
 
#82

AW: Elemente aus TStringList in Laufzeit entfernen

  Alt 23. Nov 2018, 15: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
 
#83

AW: Elemente aus TStringList in Laufzeit entfernen

  Alt 23. Nov 2018, 16: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
 
#84

AW: Elemente aus TStringList in Laufzeit entfernen

  Alt 23. Nov 2018, 17: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
DieDolly

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

AW: Elemente aus TStringList in Laufzeit entfernen

  Alt 23. Nov 2018, 17:41
Wenn dann so

Delphi-Quellcode:
type
 pmyrecord = ^myrecord;

 myrecord = record
  engtext: string;
  gertext: string;
  Repetition: integer;
 end;
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

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

AW: Elemente aus TStringList in Laufzeit entfernen

  Alt 23. Nov 2018, 18:13
*entfernt*
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

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

AW: Elemente aus TStringList in Laufzeit entfernen

  Alt 23. Nov 2018, 20:12
zwischen Tür und Angel getippt

gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
KetchUp

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

AW: Elemente aus TStringList in Laufzeit entfernen

  Alt 23. Nov 2018, 23:05
Danke für den Code aber ich blicke immer noch nicht durch

Delphi-Quellcode:
 
pmyrecord = ^myrecord; // Record declarieren. Aber warum auf einmal das "^" Zeichen?

 myrecord = record // festlegen, dass ich ein Record verwenden will?
  engtext: string; //"Container" für die englischen Vokabeln, richtig?
  gertext: string; //"Container" für die deutschen Vokabeln, richtig?
  Repetition: integer; //"Container" für die Wiederholungen, richtig?
Delphi-Quellcode:
var

  new(pmyrecord); //Was ist das?
  pmyrecord^.engtext:=Englischertext; // müsste das nicht heißen: pmyrecord^.engtext:= Vocabulary.Names[i];
  pmyrecord^.gertext:=Deutschertext; // müsste das nicht heißen: pmyrecord^.gertext:= Vocabulary.ValueFromIndex[i]
  pmyrecord^.Repetition:=3;
  Mit Zitat antworten Zitat
HolgerX

Registriert seit: 10. Apr 2006
Ort: Leverkusen
972 Beiträge
 
Delphi 6 Professional
 
#89

AW: Elemente aus TStringList in Laufzeit entfernen

  Alt 24. Nov 2018, 11:42
Hmm..

(Wieso immer mit Records bei Listen gearbeitet wird... )

Angehängt ein 'einfaches' Beispiel, wie mann mit einer TObjectList und einer Klasse für die Vokabeln einen einfaches Übungsprogramm machen kann.

Inklusive der Option, das eine falsche Lösung 3x für das Wort wiederholt werden kann und es erst dann aus der Liste entfernt wird.

Auf grafische Spielereien habe ich zunächst verzichtet, da es nur um die 'Funktion' als Beispiel geht...

Viel Spaß damit..

( Mit D6 mal so zusammen getippt )
Angehängte Dateien
Dateityp: zip VocableTest.zip (1,37 MB, 9x aufgerufen)
  Mit Zitat antworten Zitat
DieDolly

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

AW: Elemente aus TStringList in Laufzeit entfernen

  Alt 24. Nov 2018, 13:33
Also einfach sieht für einen Anfänger bestimmt anders aus
Dafür ist es aber korrekt und der richtige Weg.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 9 von 11   « Erste     789 1011      


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 08:38 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz