Feldtyp Hyperlink

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Feldtyp Hyperlink

Re: Feldtyp Hyperlink

von NTClient » Fr, 08.09.2017 08:21

Habs gefunden. Die Lösung lautet:

Code: Alles auswählen

oForm = ThisComponent.Drawpage.Forms.getByName( "MainForm" ).getByName( "SubForm" )
:oops:

Re: Feldtyp Hyperlink

von NTClient » Fr, 08.09.2017 08:05

Hallo Jungs (und Mädels),

ich muss dieses etwas ältere Thema nochmal aufgreifen. Das mit dem Makro habe ich hinbekommen:

Code: Alles auswählen

oForm = ThisComponent.Drawpage.Forms.getByName( "MainForm" )
oFeld = oForm.getByName( "txthyperlink" )
Wenn sich "txthyperlink" als Textfeld im "MainForm" befindet, läuft alles. Wenn ich allerdings verknüpfte Unterformulare vewende, und sich "txthyperlink" im SubForm befindet, kommt die Fehlermeldung "NoSuchElementException". Ich habe dem Unterformular den Namen "SubForm" gegeben und es mit

Code: Alles auswählen

oForm = ThisComponent.Drawpage.Forms.getByName( "SubForm" )
oFeld = oForm.getByName( "txthyperlink" )
probiert. Keine Chance. Wie erreiche ich einen Verweis auf das Unterformular?

Mit

Code: Alles auswählen

oForm = ThisComponent.Drawpage.Forms.getByName( "MainForm.SubForm" )
geht's auch nicht.

Re: Feldtyp Hyperlink

von therealfassi » So, 04.10.2009 19:50

Habe die Datenbank nochmal komplett neu angelegt und jetzt gings. Formularname war "Mainform" und in den Kontroll-Eigenschaften im Textfeld des Formulars selbst habe ich dann unter Daten das passende Datenfeld ausgesucht. Das hatte ich vorher nicht getan. Nun läuft alles wie es soll. Danke für die Hilfe.

Re: Feldtyp Hyperlink

von eBayer » Di, 15.09.2009 19:28

Hallo Komma,
bin ja nicht blind......
aber wie Du unschwer erkennen kannst, haben wir praktisch zeitgleich die gleiche Antwort gegeben.
Gruß eBayer

Re: Feldtyp Hyperlink

von therealfassi » Di, 15.09.2009 18:18

Und das Makro läuft, wenn das Formular geöffnet und im Vordergrund ist?
Ich denke doch schon, vielleicht lässt sich ja das anhand des Screenshots überprüfen.
Dateianhänge
Makro1.jpg
Makro1.jpg (110.38 KiB) 5988 mal betrachtet

Re: Feldtyp Hyperlink

von komma4 » Di, 15.09.2009 15:54

therealfassi hat geschrieben:leider immer noch die Fehlermeldung
Und das Makro läuft, wenn das Formular geöffnet und im Vordergrund ist?
Kannst Du Deinen Versuch mal anhängen / irgendwo bereit stellen?

Re: Feldtyp Hyperlink

von komma4 » Di, 15.09.2009 15:52

eBayer hat geschrieben:Wichtig ist nicht der Name in der IDE,
na, dann schau' doch bitte noch mal, was ich geschrieben habe

Re: Feldtyp Hyperlink

von therealfassi » Di, 15.09.2009 15:28

Habe den Formularnamen in der ersten Zeile in "MainForm" geändert, leider immer noch die Fehlermeldung. Hm...

Bin aber auch erst heute mittag bei Base eingestiegen, das dauert wahrscheinlich einfach länger :)

Re: Feldtyp Hyperlink

von eBayer » Di, 15.09.2009 15:01

Hallo, hoffentlich unterliegst Du keinem Irrtum.......
Wichtig ist nicht der Name in der IDE, sondern der im Formular vergebene Name, den Du unter den Eigenschaften des Formulars ggf. ändern kannst!
Gruß eBayer

Re: Feldtyp Hyperlink

von komma4 » Di, 15.09.2009 14:59

Nein.

Dein Formular heisst MainForm ... und hat den (sichtbaren) Namen "DVD"
(es sei denn, Du hast die Formular-Eigenschaft geändert. Sichtbarer "Name" (Formular-Übersicht) <> interner Name !)

Probiere es mal so.

Re: Feldtyp Hyperlink

von therealfassi » Di, 15.09.2009 13:58

Danke für die fixe Antwort.

In folgender Codezeile:

Code: Alles auswählen

oForm = ThisComponent.Drawpage.Forms.getByName( "DVD" )
Das Formular heißt tatsächlich "DVD".

Re: Feldtyp Hyperlink

von komma4 » Di, 15.09.2009 13:49

Willkommen im Forum.
therealfassi hat geschrieben:Bekomme nun die Fehlermeldung:
Bei welcher Code-Zeile?

:!: Die Namen sind case-sensitive

Re: Feldtyp Hyperlink

von therealfassi » Di, 15.09.2009 12:42

Hallo,

bin neu bei ooBase (umgestiegen von Papyrus). Import der DB hat auch problemlos geklappt. Habe jetzt aber auch das Problem, dass ich ein Hypertextfeld benötige (DVD-DB mit Link zur IMDB). Habe für das Feld "IMDB" im Formular "DVD" folgendes Makro eingefügt:

Code: Alles auswählen

oForm = ThisComponent.Drawpage.Forms.getByName( "DVD" )
oFeld = oForm.getByName( "IMDB" )
starten = createUnoService("com.sun.star.system.SystemShellExecute")
starten.execute( ConvertToUrl( oFeld.getString() ), "", 0)
Bekomme nun die Fehlermeldung:

Type:com.sun.star.container.NoSuchElementException


Muss leider zugeben, dass ich nicht die geringste Ahnung von BASIC habe. Schade, dass ein Feld mit Verweis zu einer externen Datei hier nicht so einfach funktioniert wie in Papyrus (System ist Linux Mint und Papyrus läuft nur unter Wine, da klappt die Übergabe nicht. Will aber eh weg von den Wndows-Programmen).

Re: Feldtyp Hyperlink

von komma4 » So, 06.09.2009 23:06

eBayer hat geschrieben: oder über die unter Properties verfügbare Eigenschaft "text"
Entschuldige***, das ist nur eine Pseudo-Eigenschaft... die intern auf die Methode umgesetzt wird. Deshalb nehme ich lieber die Methode.

Und Mails kannst Du mit einer mail-URL nicht "verschicken", sondern nur an den Mail-Editor beim Aufruf übergeben.


***bin da vielleicht etwas pingelig, aber ist mir lieber, bevor irgendwer auf falsche Fährten gelockt wird.

Re: Feldtyp Hyperlink

von eBayer » So, 06.09.2009 21:16

Du kannst Dir den Inhalt des Controls entweder mit der Methode gettext() oder über die unter Properties verfügbare Eigenschaft "text" holen.
Übrigens.... auf die gleiche Weise kannst Du aus ooBase heraus auch eMails versenden. Es wird automatisch das konfigurierte Mailprogramm gestartet.
Gruß eBayer

Nach oben