06. juni 2004 - 18:44Der er
13 kommentarer og 2 løsninger
Find et billeds placering og noget med FileListBox
Hej
Jeg starter mit program med at loade et billede ind i mit program, hvordan kan jeg finde ud af hvor henne mit billede ligger? (Er nemlig ved at lave et program ligesom det der høre med Windows til at se billeder med).
Så når jeg har fundet den placering (f.eks. 'c:\mine billeder') så sætter jeg FileListBox1.Directory := billedets placering; Så skal jeg have alle de navne med .jpg, .bmp, .gif osv. INGEN andre, for ellers så går mit program amok hvis man prøver at loade f.eks. en .exe fil ind som et billede :D
Hvordan kan jeg det? Altså få alle navnene på alle de andre billeder i samme mappe?
koden indlæser alle billeder fra c:\mine billeder ind i en listbox med den fulde sti procedure GetAllFiles(mask: string); var search: TSearchRec; directory: string; begin directory := ExtractFilePath(mask);
// find all files if FindFirst(mask, $23, search) = 0 then begin repeat // add the files to the listbox Form1.ListBox1.Items.Add(directory + search.Name); until FindNext(search) <> 0; end;
// Subdirectories/ Unterverzeichnisse if FindFirst(directory + '*.*', faDirectory, search) = 0 then begin repeat if ((search.Attr and faDirectory) = faDirectory) and (search.Name[1] <> '.') then GetAllFiles(directory + search.Name + '\' + ExtractFileName(mask)); until FindNext(search) <> 0; FindClose(search); end; end;
procedure TForm1.Button1Click(Sender: TObject); var directory: string; mask: string; begin Listbox1.Items.Clear;
I din kode skal man selv definere hvilken sti den skal bruge. Det jeg skal bruge det er at den selv finder ud af hvilken sti det åbnede billede ligger i, så den kan åbne resten af billederne også.
nej for jeg åbner ikke billedet ved at trykke f.eks. Åbn, men trækker billedet over i mit program, og så kan jeg ikke se hvad stien er, og kan så ikke åbne resten af billederne i samme mappe.
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.