Seite 1 von 1

Zwischenablage auslesen

Verfasst: Mi, 31.08.2005 08:53
von Hurby
Weiss Jemand wie ich die Zwischenablage auslesen kann und in einem String speichern...

Verfasst: Do, 01.09.2005 08:23
von Toxitom
Hey Hurby,
Weiss Jemand wie ich die Zwischenablage auslesen kann und in einem String speichern.
Ja, ich :wink:

OK, aber ein wenig Information wäre schon nötig. Grundsätzlich:

Code: Alles auswählen

...
ClipBoardHandle = createUnoService("com.sun.star.datatransfer.clipboard.SystemClipboard")
DataObj = createUnoService("com.sun.star.datatransfer.XTransferable")
DataObj = ClipBoardHandle.getContents()   
DataTypSeq = DataObj.getTransferDataFlavors()   'Array aller Inhalte
sClipBoardString = DataObj.getTransferData(DataTypSeq(0)) 
...
Die Variable sClipBoardString enthält nun den String der Zwischenablage, und zwar des letzten Eintrages (je nach verwendeten System kann die Zwischenablage ja mehrere Einträge speichern. Der zuletzt gespeicherte Eintrag ist der erste Eintrag im Array.

Ich hoffe, es hilft.

Gruss
Thomas

Verfasst: Do, 01.09.2005 12:42
von Hurby
Danke, ich hatte vor mit suchen/ersetzen ein Word zu finden und dieses in einen String schreiben, da kam ich auf die Idee mit der Zwischenablage. Oder geht das auch einfacher?

Danke im Voraus

mfg Hurby

Verfasst: Do, 01.09.2005 13:43
von Toxitom
Hey Hurby,
....Oder geht das auch einfacher?
Na, dann erläutere doch einmal etwas detaillierter, was du eigentlich erreichen willst. Dann schaun wir mal :wink:

Gruss
Thomas

Verfasst: Do, 01.09.2005 15:25
von Hurby
ich hab mal ein paar screenshots gemacht um die ganze sache zu verdeutlichen, vielleicht kannst mir mal deine e-Mail adresse geben damit ich dir das schicken kann. gruss hurby

Verfasst: Do, 27.10.2005 19:16
von Vegeta
Kann es sein, daß OpenOffice Basic in mancherlei Hinsicht noch recht stark fehlerhaft ist?

Wenn ich einen Text auslesen möchte (gilt jetzt für Writer) mit obigen Beispiel, dann klappt das nur, wenn der Text keine Formatierung hat. Wenn man z.B. Text aus dem Browser mit einem Smiley kopiert und auslesen möchte, dann bekomme ich immer die Fehlermeldung: "BASIC-Laufzeitfehler. Objektvariable nicht belegt."
Im Fenster ist dann die letzte Zeile markiert ( GetClipboard = DataObj.getTransferData(DataTypSeq(0)) ).

Kann man das irgendwie umgehen?