Avatar billede hasan Nybegynder
05. august 2004 - 16:46 Der er 7 kommentarer

åben filer

jeg er i gang med at skrive en mp3player, og jeg har registeret min playlist filtype(*.ps) med denne kode http://www.swissdelphicenter.ch/torry/showcode.php?id=178

min playlist er en normal textfile med en *.ps endelse som indeholde stier til mp3 filerne:

d:\hej.mp3
d:\med.mp3
d:\dig.mp3

når jeg klikker på min *.ps fil i windows så åbner mit program, men de stier fra *.ps filen bliver ikke tilføjet til min playlist (listbox). hvordan gør jeg det?

og det samme med mp3 filer, når jeg klikker på mp3 filer så åbner programet uden at tilføje mp3 filen sti til min listbox
Avatar billede Slettet bruger
05. august 2004 - 17:02 #1
Filnavnet bliver vist sendt som parameter 1. Så hvis du i FormCreate skriver:

if ParamCount > 1 then
  if FileExists(ParamStr(1))
    ListBox1.Items.LoadFromFile(Param(1));

tror jeg det virker :o)
Avatar billede hasan Nybegynder
05. august 2004 - 17:38 #2
virker ik :(

if ParamCount > 1 then
  if FileExists(ParamStr(1)) then
    ListBox1.Items.LoadFromFile(ParamStr(1));

den siger fejl her:
ListBox1.Items.LoadFromFile(Param(1));

skal det være
ListBox1.Items.LoadFromFile(ParamStr(1)); ?? men det virker ik
Avatar billede stoney Nybegynder
05. august 2004 - 20:48 #3
Hvis du skal tilføje til din listbox skal det så ikke være

listbox1.Items.Add(ParamStr(1));

Det er ikke testet

Stoney
Avatar billede hrc Mester
05. august 2004 - 22:56 #4
hasan: Jeg synes det er lidt fantasiløst at du stiller dit spørgsmål her - det er ok, men du kunne have prøvet at lege lidt med ParamCount, ParamStr og med CmdStr forinden, eksempelvis sådan her:

procedure TfrmMain.FormCreate(Sender: TObject);
var
  i : integer;
begin
  with lbParameters do begin // (hvilket er en ListBox)
    for i := 0 to ParamCount do
      Items.Add(ParamStr(i));

    Items.Add('');

    Items.Add(CmdLine);
  end;
end;

Dernæst kunne du prøve at kontrollere stieen mod det katalog hvor dit program køres. Hvad hvis programmet fodres med 'spilmig.ps' men at det ikke ligger i "current directory"?


Kataloget findes således:

var
  st : string;
begin
  GetDir(0,st);
...

Du kunne også singlesteppe dig igennem programmet med f7 og f8, sætte breakpoints med f5 og så videre.

Der var lidt brok iblandt, men også nogle råd. Håber de kan hjælpe dig.
Avatar billede hasan Nybegynder
06. august 2004 - 16:18 #5
det virker nu :) tak for hjælpen
Avatar billede hasan Nybegynder
06. august 2004 - 16:20 #6
hvis du lige laver et svar så kan du få dine point
Avatar billede Slettet bruger
10. september 2006 - 13:41 #7
hehe lige lidt sent.. men her et svar. :P
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