Markierten Text auslesen

Das Textverarbeitungsprogramm

Moderator: Moderatoren

mitschel
Beiträge: 5
Registriert: Mo, 22.12.2003 11:12

Markierten Text auslesen

Beitrag von mitschel »

Hallo zusammen!

Ich hätte gerne eine eigene copy&paste funktion, nur dass das paste in eine datenbank schreiben soll!

Ich weiss das ich einen Text mittels eines Textcursors markieren kann und dann ein Textobjekt zurückgeliefert bekomme. Ich schaffe es aber nicht, einen mit der Maus markierten Text, auch in ein Textobject zu speichern!

hat jemad eine idee für mich?

gruss

michael
Toxitom
********
Beiträge: 3768
Registriert: Di, 12.08.2003 18:07
Wohnort: Wiesbaden
Kontaktdaten:

Beitrag von Toxitom »

Hallo Mitschel,

auch wenn deine Anfrage nicht so klar ist, denke ich, dass du von Makro-Programmierung mit Basic sprichst?

Dort gibt es zwei Arten von Cursorn. Text-Cursor - wie erwähnt und View-Cursor, das ist das sichtbare Ding und damit auch deine Mausmarkierung. Die Objekte sind ziemlich verschieden, werden auch von unterschiedlichen Objekten abgeleitet.
Ich glaube mich zu errinnern, dass der ViewCursor vom CurrentController abgeleitet wird.
Also, wenn es das ist,was du suchst, nochmal detailliert posten. Vielleicht kann ich helfen.

Gruss
Thomas
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
mitschel
Beiträge: 5
Registriert: Mo, 22.12.2003 11:12

Beitrag von mitschel »

ja richitg! es geht um makros...

ViewCursor wird von CurrentController abgeleitet, das ist richtig!Also versuch ich noch mal besser zu erklären was ich brauche:

Ich möchte in einem Dokument eine Markierung setzen können, dann ein Makro aufrufen, welches den Inhalt der Markierung ausliest und dann weiter in eine Datenbank schreibt. Das ist der erste Schritt...
Im zweiten Schritt will ich dann genau den gleichen Text wieder aus der Datenbank in das Dokument schreiben können!

gruss

michael
Toxitom
********
Beiträge: 3768
Registriert: Di, 12.08.2003 18:07
Wohnort: Wiesbaden
Kontaktdaten:

Beitrag von Toxitom »

Hallo Mitschel,

hier ein CodeSchnipsel:

Code: Alles auswählen

sub getViewCursor
      oDoc=thisComponent
       sCursor= oDoc.currentController.getViewCursor().string
       msgbox sCursor
end sub
So liest du die markierte Stelle ein. Den musst du dann eben weiterverarbeiten.

Gruss
Thomas
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
Toxitom
********
Beiträge: 3768
Registriert: Di, 12.08.2003 18:07
Wohnort: Wiesbaden
Kontaktdaten:

Beitrag von Toxitom »

Hi Mitschel,

also, das wird schwierig bzw. langwierig. Das Cursor-Objekt speichert natürlich auch alle Formatierungen etc, die kannst du auch auslesen und später wieder einlesen, aber wenn du gemischete Formatierungen hast, das weis ich auch nicht.
Aber Sticchwort - Datenbank: Typische Datenbanken speichern doch sowieso nur Texte (also Zeichen) ohne formatierung??!
OK, wie dem auch sei: Denkanstoss:
oCursor.dbg_properties listet dir alle Eigenschaften des Objektes auf.
Z.B.

Code: Alles auswählen

...
msgbox oCursor.dbg_properties
...
da findest du dann so schöne Eigenschaften wie "CharFontName" - also der Schriftname und so weiter. All das kanst du auslesen und natürlich auch wieder setzen im TextCursor Objekt.

Vielleicht hilfts

Gruss
Thomas
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
Antworten