Memo vs Listview

0

mam taki program co z 3-ech memo wpisuje texty do jednego listview o 3 kolumnach ale jest
problem bo za kazdym razem jak wpisze cokolwiek to przy nastepnym wcisnieciu przycisku czy tam dodaniu nowego textu robi mi odstępy w dół oto (za każdym razem coraz niżej ) kod
procedure TForm1.Button1Click(Sender: TObject);
var
i : integer;
listItem : TLISTITEM;
begin
for I:= 0 to 3 do begin
Listitem:=ListView1.Items.Add;
with Listitem do begin
ListItem.Caption:= memo3.Lines.Strings[i];
with subitems do begin
Add(memo1.Lines.Strings[i]);
Add(memo2.Lines.Strings[i]);
end;
end;
end;
end;
end.

---= pozdrawiam Oskar =- (delphi 6 GG:2792614)

0

&gtfor I:= 0 to 3 do begin
&gtListitem:=ListView1.Items.Add;
Mysle ze problem tkwi wlasnie w tej petli for. Dodaje ona 4 (tyle razy wykonuje sie petla) item do listy a ty jak piszesz potrzebujesz 3.
Sproboj:
For I:=1 to 3 do begin
Listitem:=ListView1.Items.Add;
--Pozdrawiam
Ojciec (Delphi 5 Enterprise)

0

Ociec, a nie powinno byc raczej:

for i:=0 to 2 do ?--Pawel

Delphi6

0

Masz racje, nie zwrocilem uwagi na to, ze w dalszej czesci program uzywa zmiennej I do okreslenia numeru itemu. Chodzilo mi tylko o to zeby petal wykonala sie 3 razy. Dzieki za korekte.--Pozdrawiam
Ojciec (Delphi 5 Enterprise)

0

MOZE to sie wydac glupie ale dopiero zaczeło dzialac tak jak trzeba jak zrobilem

&gt&gt&gt for I:= 0 to 0 do begin &lt&lt&lt nie wiem czy w tym przypadku petla jest potrzebna nawet

ktos wie czemu tak jest to niech mi powie a wskazowka jak zrobilem for &gt&gt I:= 0 to 1 do begin &lt&lt
to robil mi odstepy co jedna linie a jak zrobilem for &gt&gt I:= 0 to 2 do begin &lt&lt to co dwie linie itd itp :?
ktos wie czemu ???
---= pozdrawiam Oskar =- (delphi 6 GG:2792614)

0

No pewnie ze petla nie jest potrzebna. Jak poprawialem Ojca to nie przeczytalem dokladnie Twojego programu :))).

Tak ma byc:

procedure TForm1.Button1Click(Sender: TObject);
var
i : integer;
listItem : TLISTITEM;
begin
Listitem:=ListView1.Items.Add;
with ListItem do begin
Caption:= memo3.Lines.Strings[0];
with SubItems do begin
Add(memo1.Lines.Strings[0]);
Add(memo2.Lines.Strings[0]);
end;
end;
end;

Petla powodowala, ze
dla i=0 program tworzyl Item w ListView, wstawial mu tekst z memo3 linii 'pierwszej' (o numerze i=0), dodawal 2 subitemy i wstawial im tekst z memo1 i 2

potem, dla i=1 program tworzyl nastepny Item z SubItemami w wstawial teksty z linii 1 trzech memo, ktore to linie byly puste. To samo powtarzalo sie przy kolejnych i - stad linie odstepu.

W ogole nie rozumiem dlaczego uzywasz Memo skoro wstawiasz tylko jedna linie (o numerze 0). Moze lepiej uzyc Edit?

Pozdrawiam

--Pawel

Delphi6

0

heh bo wlasnie pruboje stworzyc progrma zeby nazwy plikow z katalogu do html exportował z róznymi
tam parametrami a takie [CIACH!] sa mi potrzebne wiesz nie mozna od tyłu brac pare zeczy nie wiem
dlatego sie pytam gdybym mial ksiazke to moze by mi było łatwiej no ale nie mam wiec musze sie o kazdego o pomoc pytac dzieki i jeszcze sie odezwe
---= pozdrawiam Oskar =- (delphi 6 GG:2792614)

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