16. december 2005 - 13:22Der er
5 kommentarer og 1 løsning
hjælp til TListView
hej eksperter
en jeg kender har lavet en dll i c++ til mig, den kan konvertere nogle filformater. begge funktioner tager 2 parametre a typen CHAR (PChar i delphi), jeg har så en TListView - sat til vsReport som skal være 'beholder' for de filer der skal konverteres. der er så nogle 'subitems' med fil størelse osv. hvordan laver man det så smartest med en open dialog der tilføjer de valgte filer, og når brugeren så klikker konverter tager den filerne i TListView og 'fodre' funktionen' med et filnavn, et efter et?
Denne side indeholder artikler med forskellige perspektiver på Identity & Access Management i private og offentlige organisationer. Artiklerne behandler aktuelle IAM-emner og leveres af producenter, rådgivere og implementeringspartnere.
Du sætter ofAllowMultiSelect=true i din Open dialog og så lidt kode:
function GetFileSize(FileName : string) : string; var sr: TSearchRec; begin if FindFirst(FileName, faAnyFile, sr) = 0 then Result:=IntToStr(sr.Size) else Result:='0'; FindClose(sr); end;
procedure TForm1.FillListView(Files : TStrings); var i : integer; begin for i:=0 to Files.Count-1 do with ListView1.Items.Add do begin Caption:=Files[i]; SubItems.Add(GetFileSize(Caption)); end; end;
procedure TForm1.Button1Click(Sender: TObject); begin if OpenDialog1.Execute then FillListView(OpenDialog1.Files); end;
---------------
Når der trykkes på konverter kan du så bruge:
var i : integer; begin for i:=0 to ListView1.Items.Count-1 do DinFunktion(PChar(ListView1.Items[i].Caption), PChar(???)); end;
jeg har et lille problem med koden, i argument 2 i funktionen. je har en edit hvor burgeren har valgt en mappe f.eks d:\converted\ og i kolonne 4 filnavnet feks 123.wav. hvordan kombinere jeg så disse to ting så det bliver d:\converted\123.wav?
Hvis der er valgt en linie i en ListView og Mappen er i den første kolonne og filnavnet er i kolonne 4:
var Komplet : string; begin Komplet:=ListView.Selected.Caption; // giver mappen f.eks. d:\converted\ Komplet:=Komplet+ListView.Selected.SubItems[2]; // mappen+filnavn i kolonne 4 end;
således, takker mange gange for hjælpen - og godt nytår :D
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.