Das Notes Forum
Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: Andysun am 19.08.04 - 10:02:38
-
Hallo @all,
ich habe folgendes Problem,
ich habe einen Button KOPIEREN,
dieser soll folgende Funktion ( Befehl ) ausführen :
- er soll ein bestimmtes Feld in den Zwischenspeicher speichern
Danke
Gruss
Andy
-
Ist das Dokument im Bearbeitenmodus, wenn die Schaltfläche geklickt wird. Falls ja, wäre des einfach. Falls nein, geht es auch, aber dann muss die Windows API her.
Andreas
-
ich bin Bearbeitungsmodus, kannst du mir helfen ?
Danke
-
Das sollte es tun:
@Command([EditGotoField];"Feldname");
@Command([EditSelectAll]);
@Command([EditCopy])
Andreas
-
er kopiert nur den Button :o)
Aber nicht das angegebene Feld.
es funktioniert nicht.
-
???
hast Du in der Zeile
@Command([EditGotoField];"Feldname");
auch den richtigen Feldnamen angegeben - in Hochkomma?
Ist das ein Rich Text Feld? Gibt es dort Hide When Formeln?
Gibt es für den Absatz, in dem das Feld ist, Hide When Formeln?
Andreas
-
des Feld steh im Hochkomma,
das Feld wird berechnet , ergibt sich aus den anderen Feldern,
die User markieren den Text und kopieren dann den Feldinhalt.
Es gibt keine Verbergen wenn Formeln.
wenn ich den Button nicht im Bearbeitungsmodus betätige,
markiert er den Text bis zum Button ( Das angegebene Feld steht aber unter dem Button),
beim einfügen kopiert er aber das ganze Dokument.
-
in ein berechnetes Feld kann man nicht per EditGotoField springen...
Du kommst damit um API nicht herum...
Tode
-
Du kannst auch alles in der Maske - ausser das Feld - mit der Hide-When-Formel "Verbergen beim Kopieren" versehen.
Dann ginge
@Command([EditSelectAll]);
@Command([EditCopy])
Dann kannst Du allerdings auch nur noch dieses Feld ins Clipboard kopieren.
Andreas
-
Hi,
mit einem berechneten Feld klappt das nicht. Es muss bearbeitbar sein.
Andere Alternative wäre Script. Ich hab mir da mal eine Lösung gebastelt.
Packe den angehängten Code in eine Script-Bibliothek und binde sie mit Use ein.
Beispiel-Aufruf
...
Dim workspace As New NotesUIWorkspace
Dim uidoc As NotesUIDocument
Dim doc As NotesDocument
Dim clsClipboard As WindowsClipboard
Set uidoc = workspace.CurrentDocument
Set doc = uidoc.Document
Set clsClipBoard = New WindowsClipboard()
clsClipboard.Contents = doc.Begriff_D(0)
Messagebox "Daten erfolgreich in die Zwischenablage kopiert.", 64, "Glossar-Datenbank"
...
Damit kannst du berechnete Felder nutzen und du musst nicht im Bearbeiten-Modus sein.
Vielleicht hilft dir das weiter.
Axel
Edit am 02.05.05: Anhang mit der Klasse gelöscht, weil Code fehlerhaft.
-
Muss das berechnete Feld für alle sichtbar sein? Falls das nicht der Fall ist, kannst du es verbergen und bearbeitbar machen.
Viele Grüße
Harry
-
Hi Danke nochmal für die Hilfe!
Habe nur ein Problem das kopieren eines Textes in die Zwischenablage klappt nur beim ersten mal. Wenn man 2 mal klickt wird die zwischenablage wieder geleert. Beim 3 mal klappt es dann wieder. Jemand eine Idee woran das liegt?
-
Hi,
mit welchen Funktionen machst du das denn? Ein paar mehr Infos wären ganz hilfreich.
Axel