mangler kode ang. listview

Tags:    delphi

jeg har brug for noget kode som tager info fra kolonne 4 x antal rækker

lidt ligsom det her:

begin
integer := 0
repeat
integer := integer + 1
string := listview1.kolonne4;
until integer = listview1.antalrækker

huber i forstår hvad jeg mener eller så skriv :)

- SpeC - #SpeC.DK @ Q-NET



7 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 3 karma
Sorter efter stemmer Sorter efter dato
jeg har brug for noget kode som tager info fra kolonne 4 x antal rækker

lidt ligsom det her:

begin
integer := 0
repeat
integer := integer + 1
string := listview1.kolonne4;
until integer = listview1.antalrækker

huber i forstår hvad jeg mener eller så skriv :)

- SpeC - #SpeC.DK @ Q-NET

Jeg går her ud fra at du har sat ViewStyle=vsReport, og at kolonne 0 er et item, og kolonne 1 og opefter er subitems.

<pre> for n := 0 to ListView1.Items.Count-1 do
begin
memo1.lines.add(Listview1.Items.Item[n].SubItems.Strings[3]);
end;
</pre>

Håber det hjælper. Ellers må du skrive igen, og fortælle hvordan dit listview er defineret

/data



hej.
jeg forstår desværre ikke hvad du mener. hvad skal info være? og hvad betyder '4 x'. mvh: jakob



hej.
jeg forstår desværre ikke hvad du mener. hvad skal info være? og hvad betyder '4 x'. mvh: jakob


det er også meget uforståligt men den skal køre repeat lige så mange gang som der er rækker
- SpeC - #SpeC.DK @ Q-NET



jeg har brug for noget kode som tager info fra kolonne 4 x antal rækker

lidt ligsom det her:

begin
integer := 0
repeat
integer := integer + 1
string := listview1.kolonne4;
until integer = listview1.antalrækker

huber i forstår hvad jeg mener eller så skriv :)

- SpeC - #SpeC.DK @ Q-NET


ok, tror jeg forstår hvad du mener...

begin
integer := 0;
repeat
inc(integer);
goernoget();
until integer = listview1.items.count;

alternativt:

for i := 1 to listview1.items.count do begin
goernoget();
ognogetmere();
end;



jeg har brug for noget kode som tager info fra kolonne 4 x antal rækker

lidt ligsom det her:

begin
integer := 0
repeat
integer := integer + 1
string := listview1.kolonne4;
until integer = listview1.antalrækker

huber i forstår hvad jeg mener eller så skriv :)

- SpeC - #SpeC.DK @ Q-NET

ok, tror jeg forstår hvad du mener...

begin
integer := 0;
repeat
inc(integer);
goernoget();
until integer = listview1.items.count;

alternativt:

for i := 1 to listview1.items.count do begin
goernoget();
ognogetmere();
end;


men hvordan får jeg data'erne fra kolonne 4 ??

- SpeC - #SpeC.DK @ Q-NET



Den første hedder ListItem.Caption, den næste hedder ListItem.SubItems[0] og er dermed kolonne 2 :D Kolonne 3 er ListItem.SubItems[1] og den du skal bruge hedder ListItem.SubItems[2]!

Ex.
| Kolonne 1 | Kolonne 2 | Kolonne 3 | Kolonne 4 | Kolonne 5 |
| Kolonne 1 | Kolonne 2 | Kolonne 3 | Kolonne 4 | Kolonne 5 |
| Kolonne 1 | Kolonne 2 | Kolonne 3 | Kolonne 4 | Kolonne 5 |
| Kolonne 1 | Kolonne 2 | Kolonne 3 | Kolonne 4 | Kolonne 5 |

| Caption | SubItem[0] | SubItem[1] | SubItem[2] | SubItem[3] |

Er du med? :)

Men det er sådan det fungerer og værdien der bliver returneret er altid en streng så husk at konvertere med StrToInt eller hvad du nu skal bruge!

Casper



det var lige det jeg mente =) thx alle sammen ked af at sige det men data får de up's da han's kode virkede 110%
- SpeC - #SpeC.DK @ Q-NET



t