therealfassi hat geschrieben:Habe das mal probiert, aber die Übergabe klappt immer noch nicht. Es kommt für folgende Zeile wieder die Meldung "Eigenschaft oder Methode nicht gefunden", auch wenn ich die Varianten benutze.
Wenn oFeld die Methode nicht hat, kann sie auch nicht ausgeführt werden

daher der Fehler.
Mach mal eine Schaltfläche in Deinem Fromular und weise dem Button dann folgendes Makro zu:
Code: Alles auswählen
sub FormFelderAuslesen
odoc=thiscomponent
oform=odoc.drawpage.forms.getbyindex(0)
n=1
do until oform.getstring(n)=""
myselect=oform.getstring(n)
msgbox "Index: " + n + " ergibt: " + myselect
n=n+1
loop
end sub
Wenn Du den Index bei dem Dein Pfad angezeigt wird dann kennst setzt Du ihn in "oform.getstring(n)" statt 'n' ein und Du erhältst dann den String:
Code: Alles auswählen
Dim sUebergabeParameter as String
odoc=thiscomponent
oform=odoc.drawpage.forms.getbyindex(0)
sUebergabeParameter = oform.getstring(n)
starten = shell("vlc", 3, sUebergabeParameter)
Dein Formular basiert auf einer Tabelle oder Abfrage - zumindest etwas was Zeilen und Spalten hat. Angezeigt wird im Formular immer eine Zeile dieser Tabelle. Mit .getstring(n) erhältst Du den Wert der n-ten Spalte dieser Zeile. Wenn das Feld "Datei" die 3. Spalte dieser Tabelle ist dann erhältst Du mit .getstring(3) den Dateinamen...
therealfassi hat geschrieben:
Eine Message-Box bekomme ich auch nur, wenn ich den Pfad zur Datei direkt eingebe. Dann wird auch vlc aufgerufen, das Video startet allerdings nicht und lässt sich auch nicht von Hand starten (aber das ist wohl ein anderes Problem - eins nach dem anderen). Ups, geht doch - Pfad wird ohne "file:" angegeben...
... klar, weil der Fehler von oben ja nicht auftritt...
therealfassi hat geschrieben:
Die Frage ist doch, wieso das ganze bei der Übergabe der URL zu Firefox klappt und hier nicht. Warum wird mit "oFeld" hier nicht der Pfad übergeben, wenn er bei der bei der IMDB-Verlinkung sogar den Pfad erst in eine URL umwandeln muss?
Weil FF ein Browser ist und die URL interpretiert. Wenn Du vlc als Plugin im Browser laufen hast wird FF bei jeder URL die auf eine Datei verweist die vlc abspielen kann die Datei auch mit vlc öffnen ... das macht vlc auch ohne Browser aber die Übergabe des Parameters muss schon korrekt erfolgen.
g
[quote="therealfassi"]Habe das mal probiert, aber die Übergabe klappt immer noch nicht. Es kommt für folgende Zeile wieder die Meldung "Eigenschaft oder Methode nicht gefunden", auch wenn ich die Varianten benutze.
[code]sUebergabeParameter = oFeld.getString()[/code]
[/quote]
Wenn oFeld die Methode nicht hat, kann sie auch nicht ausgeführt werden ;) daher der Fehler.
Mach mal eine Schaltfläche in Deinem Fromular und weise dem Button dann folgendes Makro zu:
[code]sub FormFelderAuslesen
odoc=thiscomponent
oform=odoc.drawpage.forms.getbyindex(0)
n=1
do until oform.getstring(n)=""
myselect=oform.getstring(n)
msgbox "Index: " + n + " ergibt: " + myselect
n=n+1
loop
end sub
[/code]
Wenn Du den Index bei dem Dein Pfad angezeigt wird dann kennst setzt Du ihn in "oform.getstring(n)" statt 'n' ein und Du erhältst dann den String:
[code]
Dim sUebergabeParameter as String
odoc=thiscomponent
oform=odoc.drawpage.forms.getbyindex(0)
sUebergabeParameter = oform.getstring(n)
starten = shell("vlc", 3, sUebergabeParameter)
[/code]
Dein Formular basiert auf einer Tabelle oder Abfrage - zumindest etwas was Zeilen und Spalten hat. Angezeigt wird im Formular immer eine Zeile dieser Tabelle. Mit .getstring(n) erhältst Du den Wert der n-ten Spalte dieser Zeile. Wenn das Feld "Datei" die 3. Spalte dieser Tabelle ist dann erhältst Du mit .getstring(3) den Dateinamen...
[quote="therealfassi"]
Eine Message-Box bekomme ich auch nur, wenn ich den Pfad zur Datei direkt eingebe. Dann wird auch vlc aufgerufen, das Video startet allerdings nicht und lässt sich auch nicht von Hand starten (aber das ist wohl ein anderes Problem - eins nach dem anderen). Ups, geht doch - Pfad wird ohne "file:" angegeben...
[/quote]
... klar, weil der Fehler von oben ja nicht auftritt...
[quote="therealfassi"]
Die Frage ist doch, wieso das ganze bei der Übergabe der URL zu Firefox klappt und hier nicht. Warum wird mit "oFeld" hier nicht der Pfad übergeben, wenn er bei der bei der IMDB-Verlinkung sogar den Pfad erst in eine URL umwandeln muss?
[/quote]
Weil FF ein Browser ist und die URL interpretiert. Wenn Du vlc als Plugin im Browser laufen hast wird FF bei jeder URL die auf eine Datei verweist die vlc abspielen kann die Datei auch mit vlc öffnen ... das macht vlc auch ohne Browser aber die Übergabe des Parameters muss schon korrekt erfolgen.
g