Avatar billede roz Nybegynder
26. februar 2005 - 13:06 Der er 2 kommentarer og
1 løsning

Problem med Drag and drop i mediaplayer

Jeg har lavet en mediaplayer og bruger følgende kode til at man kan drag and drop filer ind i programmet:

(Skal måske lige siges at Path er en stringlist indeholdende stierne til alle filerne i Listbox1)

procedure TMedia.AcceptFiles( var msg : TMessage );
const
  cnMaxFileNameLen = 255;
var
  i,
  nCount, j, k    : integer;
  acFileName : array [0..cnMaxFileNameLen] of char;
begin
  // find out how many files we're accepting
  nCount := DragQueryFile( msg.WParam,
                          $FFFFFFFF,
                          acFileName,
                          cnMaxFileNameLen );

  // query Windows one at a time for the file name
  for i := 0 to nCount-1 do
  begin
    DragQueryFile( msg.WParam, i,
                  acFileName, cnMaxFileNameLen );

    // do your thing with the acFileName
begin

    for j := Low(acFilename) to High(acFilename) do Path.Add(acFilename[j]);
    for k := 1 to (Path.Count) do Listbox1.Items.Add(ExtractFileName(Path.Strings[k-1]));
end;

  end;

  // let Windows know that you're done
  DragFinish( msg.WParam );
end;

Men det virker ikke. Til min Listbox1 bliver der bare tilføjet en masse bogstaver (1-2 hver linje) men de ser ud som om de er fra stien til den valgte fil.
Hvorfor tilføjer den ikke navnet på filen?
Avatar billede doc404 Novice
26. februar 2005 - 15:05 #1
Sådan skudt lidt fra hoften må det vel være

...
// query Windows one at a time for the file name
  for i := 0 to nCount-1 do
  begin
    DragQueryFile( msg.WParam, i,acFileName, cnMaxFileNameLen );
    // do your thing with the acFileName
    Path.Add(acFileName);
  end;

  for i := 0 to Path.Count - 1 do 
    Listbox1.Items.Add(ExtractFileName(Path.Strings[i]));

...
Avatar billede roz Nybegynder
26. februar 2005 - 19:06 #2
Sørme om du ikke har ret! Takker:D
Kom med et svar så får du point
Avatar billede doc404 Novice
26. februar 2005 - 22:08 #3
:-)
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester