masowe wrzucanie

0

Do SynMemo zrobiłem takie coś na wrzucanie plików:

[code]procedure Tnotatnik.SynMemoDropFiles(Sender: TObject; X, Y: Integer;
AFiles: TStrings);
BEGIN
opendialog1.filename:=AFiles[0]; SynMemo.Lines.LoadFromFile(opendialog1.FileName);

END;[/code]

A jak zrobić masowe wrzucanie, a nie tylko jednego pliku. Np. zaznaczam 10 plików i przeżucam do SynMemo i niech się tam wszystkie załadują po kolei np. oddzielone enterem.

0

procedure Tnotatnik.SynMemoDropFiles(Sender: TObject; X, Y: Integer;
AFiles: TStrings);
var i : integer;
BEGIN
for i:=0 to AFiles.count-1 do
SynMemo[i].Lines.LoadFromFile(AFiles[i]);
END;

0

SynMemo[i]

<font color="red">[Error] Unit1.pas(1096): Class does not have a default property</span>

???

0

procedure Tnotatnik.SynMemoDropFiles(Sender: TObject; X, Y: Integer;
AFiles: TStrings);
var i : integer;
begin
for i:=0 to AFiles.count-1 do
SynMemo[i].Lines.LoadFromFile(AFiles[i]);
end;

TU chodzi o to że SynMemo to jest tablica z TSynMemo kapujesz?

0

Ale kodzik chyba wziełeś ten sam co? - i jak to mam ruszyć ?

0

W kodzie są dwa błędy. Po pierwsze:

procedure Tnotatnik.SynMemoDropFiles(Sender: TObject; X, Y: Integer;
AFiles: TStrings);
var i : integer;
begin
for i:=0 to AFiles.count-1 do
SynMemo.Lines[i].LoadFromFile(AFiles[i]);
end;

Drugi błąd jest taki, że nowy plik będzie zastępował kolejne. Tak więc trzeba sobie stworzyć jakiś tymczasowy TStringList, do którego będzie się ładować kolejne pliki, a potem doklejać go do synmemo :).

0

procedure Tnotatnik.SynMemoDropFiles(Sender: TObject; X, Y: Integer;
AFiles: TStrings);
var
i : integer;
s: TStrings;
begin
s:=TString.Create;
for i:=0 to AFiles.Count - 1 do begin
s.LoadFromFile(AFiles[i]);
SynMemo.Lines.AddStrings(s)
end;
s.Free;
end;

0

[code]procedure Tnotatnik.SynMemoDropFiles(Sender: TObject; X, Y: Integer;
AFiles: TStrings);
var
i : integer;
s: TStrings;
begin
s:=TString.Create;
for i:=0 to AFiles.Count - 1 do begin
s.LoadFromFile(AFiles[i]);
SynMemo.Lines.AddStrings(s)
end;
s.Free;
end; [/code]

<font color="red">[Error] Unit1.pas(1096): Undeclared identifier: 'TString'</span>

0

Yyy...

TString<font color="red">s</span>.Create

:)

0

<font color="red">[Error] Unit1.pas(1096): Undeclared identifier: 'TString'</span>

Trudno się domyślić że tego s tam brakuje?? He??

0

<font color="red">[Warning] Unit1.pas(1096): Constructing instance of 'TStrings' containing abstract method 'TStrings.Clear'</span>

no i rzeczywiście, podczas wrzucania: Abstract error

Sorry, że tak męcze z tym. ale to ważne

???

0

Zamień wszystkie wystąpienia TStrings na TStringList.

1 użytkowników online, w tym zalogowanych: 0, gości: 1