Blad przypisania tekstu do TStrings

Blad przypisania tekstu do TStrings
chkam
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 59
0

Witam
Posiadam sobie obiekt TMemo ktory operuje TStrings. Memo.Lines
Zalozylem sobie zmienna IOLines : TStrings;
I zaczely sie problemy z operacja na tej nowo utworzonej zmiennej.
Kiedy chcialem przypisac tekst IOLines.Add(' TEXT ') dostalem blac Unit 'FileCtrl' is specific to a platform.
A kiedy przypisywalem IOLines := Memo.Lines nie zostalo nic przypisane

Podobnie z TStringList
W czym moze byc problem ?

_13th_Dragon
  • Rejestracja: dni
  • Ostatnio: dni
0

zamień na IOLines:TStringList;
IOLines:=TStringList.Create();
...

chkam
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 59
0

Przypisanie IOLines := Memo1.Lines dalej nie dziala, zmienna jest pusta

IOLines:=TStrings.Create()
IOLines:=Memo1.Lines;

Dodatkowo jezeli nie dodam IOLines : TStrings; nie moge operowac na zmiennej ktorej nie ma.

ER
  • Rejestracja: dni
  • Ostatnio: dni
0

Nie używaj TStrings.

Kopiuj
IOLines := TStringList.Create();
IOLines.Assign(Memo1.Lines);
flowCRANE
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Tuchów
  • Postów: 12269
0

Źle to robisz; Możesz wykorzystać typ TStrings, ale przy tworzeniu obiektu trzeba wykorzystać konstruktor z klasy TStringList:

Kopiuj
var
  IOLines: TStrings;
begin
  {...}
  IOLines := TStringList.Create();

A co do przepisania linii z kontrolki - wykorzystaj metodę Assign:

Kopiuj
IOLines.Assign(Memo1.Lines);

i będzie wszystko działać.


chkam napisał(a)

Kiedy chcialem przypisac tekst IOLines.Add(' TEXT ') dostalem blac Unit 'FileCtrl' is specific to a platform.

To nie jest błąd, tylko ostrzeżenie; [Warning] XXX.pas(X): Unit 'FileCtrl' is specific to a platform oznacza, że ten moduł jest specyficzny dla platformy Windows; Program pomimo tego ostrzeżenia się normalnie skompiluje i jeśli nic nie zmaściłeś w kodzie to powinien działać poprawnie.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.