Avatar billede janbb Juniormester
16. november 2005 - 00:37 Der er 7 kommentarer og
1 løsning

listbox-browser

Vil gerne i en listbox pege på en fil, der så afvikles i browseren med et foranstillet http://localhost/

Er en 'klovn' til strenge (og meget andet).

Er der nogen der vil komme med bedre forslag:
end...

(har prøvet lidt forskelligt, men ak)

procedure TForm1.FileListBox1Change(Sender: TObject);

  var
  prog, param: String;
begin
  param := filelistbox1.filename;

  WebBrowser1.Navigate('http://localhost/'+ (filelistbox1.filename));
end;

(ps: kan man osse få filelistboxen til at starte i et prædef. bib. ?)
Avatar billede stone Forsker
16. november 2005 - 00:50 #1
prædifineret bib

sidder ik lige med delphi men det skulle gøre det i din Form1.Create

filelistbox1.Directory :=('c:\temp');
Avatar billede stone Forsker
16. november 2005 - 02:10 #2
næ... lad os glemme den filelistbox og bruge en listbox i stedet...

uses shellapi

i din txt fil prøv at skrive www.eksperten.dk gem filen

//hent filen
fl.Items.LoadFromFile('c:\temp\test.txt');// i Form1.OnCreate



// i din listbox click event skriver du:
var
Filename: string;
begin                      //listbox = (fl)
Filename:= (fl.items[fl.itemindex]);
ShellExecute(0, 'open', PChar(filename), nil, nil, SW_SHOWNORMAL);


når du så trykker på et vilkårligt valgt item i listboxen starter den browseren med den url som du har trykket på i listboxen.
Avatar billede janbb Juniormester
16. november 2005 - 02:32 #3
Det lyder jo spændende nok stone.Det vil jeg skam kigge på - og det kan osse være det slet ikke kan lade sig gøre at køre asp/php i en borland webbrowser, men det var det jeg ville forsøge .. derfor winexec.

Iøvrigt virker startbib-metoden fint tak.

Men jeg har forsøgt mig med de strenge (sikkert sundt) og fået nogen lagt sammen i en editfelt, hvilket virker bortset fra at man ikke kan få fjernet stien fra filnavnet, hvilket jo er nødv. hvis man vil køre localhost-filer ?

ala: Eaddress.text := Eaddress.text+filelistbox1.filename;

Men jeg glæder mig til at prøve din itemindexmetode, den har jeg osse prøvet at finde ud af uden held.

Tak indtil videre.Skal nok meddele om jeg finder en brugbar vej.
Man kan vel osse dirigere en shellexecute til en Twebbrowser såvidt jeg husker, men hvodan man komer af med bib-stien i filnavnet har jeg svært ved at overskue.
Avatar billede janbb Juniormester
16. november 2005 - 02:59 #4
Dejligt med listboxmetode der fungere.tror jeg slår mig til tåls med det foreløbig.
Avatar billede janbb Juniormester
16. november 2005 - 13:36 #5
fandt iøvr. ud af det andet osse: man bruger
Eaddress.text := Eaddress.text+extractfilename(filelistbox1.filename);
Avatar billede stone Forsker
16. november 2005 - 13:54 #6
kanon og held og lykke med dit project SS
Avatar billede janbb Juniormester
17. november 2005 - 16:04 #7
Tak - jeg tror det hjalp :=)

I hvert fald opdagede jeg noget der programmeringsmæssigt synes at ha nogle perspectiver for 'folk', der 'tumler' med hjemmesider:

Mit program (meget simpelt - se nedenfor) bevirker jo at man kan gemme sine
webprogramfiler i et vilkårligt bib. i stedet for at skabe mere og mere rod
i wwwroot-bibbet - herligt.
(der er kommet flere 'uses' med end højst nødv.)

unit host2Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  FileCtrl, StdCtrls, OleCtrls, SHDocVw, dxCore, dxWinXPBar, dxContainer, ImgList, ActnList, ExtCtrls,
  shellapi, ComCtrls, Menus;
type
  TForm1 = class(TForm)
    WebBrowser1: TWebBrowser;
    FileListBox1: TFileListBox;
    DirectoryListBox1: TDirectoryListBox;
    EAddress: TEdit;
    Label1: TLabel;
    Label2: TLabel;
    procedure FileListBox1Change(Sender: TObject);



    procedure Label1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.FileListBox1Change(Sender: TObject);



begin
Eaddress.text := 'http://localhost/' ;

  Eaddress.text := Eaddress.text+extractfilename(filelistbox1.filename);
  webBrowser1.Navigate(EAddress.Text);
end;


procedure TForm1.Label1Click(Sender: TObject);
begin
    webBrowser1.Navigate(EAddress.Text);
end;

end.
Avatar billede janbb Juniormester
17. november 2005 - 16:21 #8
øhh beklager, men så pragtfuldt var det desværre ikke haha - det virker kun fordi der ligger de samme filer i wwwroot - desværre, men aligevel er det ok at man kan samle 'udvalg' af sine filer i andre bibber - det gir da lidt bedre overblik i nogen sammenhænge så fint nok
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