Det bliver vist fint.. Men en bruger har fået en "acces violation.. Read of address 00000000..." osv.. Tænkte der kunne være en pointer fejl i denne forbindelse.
Jeg har ikke kunne finde noge dokumentation der beviser, at den ikke kan kaldes med en integer.
SubItems->Add (i virkeligheden TStrings->Add) KAN kaldes med en integer, hvilket må tilskrives implementeringen af AnsiString, idet compileren tror at man kan "caste" (ligesom man kan for simple datatype char -> int -> float) en int til en AnsiString.
SubItems er beregnet til brug når ViewStyle er vsReport, og ignoreres ellers. Indsættelse af andre værdier, må være beregnet på OwnerDraw, dvs. hvor du selv laver en "Cellrender" funktion til at "tegne" indholdet af item'et.
Der er derfor ingen tvivl om at det er tanken, at du laver IntToStr() i kaldet.
Jeg fandt følgende i on-line hjælpen: const char Names[6][2][10] = {{"Rubble","Barny"}, {"Michael", "Johnson"}, {"Bunny", "Bugs"}, {"Silver", "HiHo"}, {"Simpson", "Bart"}, {"Squirrel", "Rockey"}};
TListColumn *NewColumn; TListItem *ListItem; TListView *ListView = new TListView(this);
Det er IKKE forbudt - men BØR kun anvendes sammen med Owner-draw, for standard Draw-funktionen kan ikke finde ud af at "tegne" 10, hvorimod den godt kan finde ud at at "tegne" IntToStr(10).
Sidstnævnte er efter min mening den RIGTIGE måde at gøre det på. (Hvis du skal bruge tallet igen, skriver du bare StrToInt(ListView->Items->Item[x]->SubItems[y]);)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.