[gelöst] Cursor positionieren in Writer Texttabelle

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

yeti
*****
Beiträge: 324
Registriert: Mi, 20.10.2004 12:11
Wohnort: Emmendingen

[gelöst] Cursor positionieren in Writer Texttabelle

Beitrag von yeti »

Hallo,

ich kann mit dem Befehl:

Code: Alles auswählen

dispatcher.executeDispatch(document, ".uno:GoToStartOfDoc", "", 0, Array())
in die erste Zelle einer Tabelle springen, sofern diese das erste Element auf einer Seite ist. Danach dann mit einer Reihe von Befehlen:

Code: Alles auswählen

dispatcher.executeDispatch(document, ".uno:JumpToNextCell", "", 0, Array())


immer eine Zelle weiter, bis ich in der zweiten Spalte in der zweiten Zelle bin. Ist das wie in der Calc-Tabelle so, daß die Zellen auch bestimmte "nicht sichtbare" Namen haben? Demnach wäre für mich die Zelle B2 relevant.

Wie kann ich direkt den Textcursor in die Zelle B2 einer Texttabelle in Writer setzen?

Die Tabelle heißt im Moment noch Tabelle1 und ich arbeite hier in OOo 2.0.

Vielen Dank im voraus,
Yeti
Zuletzt geändert von yeti am Do, 02.03.2006 16:45, insgesamt 1-mal geändert.
Toxitom
********
Beiträge: 3769
Registriert: Di, 12.08.2003 18:07
Wohnort: Wiesbaden
Kontaktdaten:

Beitrag von Toxitom »

Hey Yeti,

hmm, es empfiehlt sich immer - wenn man umfangreicher programmieren möchte - sich entsprechende Dokumentationen oder Literatur zuzulegen. Dann ergeben sich viele Fragen von selbst :wink:
Wie kann ich direkt den Textcursor in die Zelle B2 einer Texttabelle in Writer setzen?
Tia, hier bleibt zunächst die Frage: Welchen Cursor meinst du? Den sichtbaren (View-Cursor), der wird alerdings nr dann benötigt, wenn der Benutzer dort etwas reinschreinen soll.
Oder einen Textcursor, den dazu benutzt, um z.B. per Makro etwas in die Zelle zu schreiben. Zwischne diesen beiden Cursorn gibt es "Welten".

Im Übrigen hast du recht: Auch Tabellenzellen in Texttabellenen haben "Namen", und zwar sowohl Indexbasiert(also (1,1) z.B.) als auch Namensbasiert (B2).

Tia, also, was willst du erreichen?

Gruss
Thomas
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
yeti
*****
Beiträge: 324
Registriert: Mi, 20.10.2004 12:11
Wohnort: Emmendingen

Beitrag von yeti »

Toxitom hat geschrieben:Hey Yeti,

hmm, es empfiehlt sich immer - wenn man umfangreicher programmieren möchte - sich entsprechende Dokumentationen oder Literatur zuzulegen. Dann ergeben sich viele Fragen von selbst :wink:
Klar, deswegen werde ich auch ein Buch bestellen ;) Diese Art von Arbeit wird denke ich in Zukunft noch mehr auf mich zukommen und schon alleine deshalb...
Toxitom hat geschrieben: Tia, hier bleibt zunächst die Frage: Welchen Cursor meinst du? Den sichtbaren (View-Cursor), der wird alerdings nr dann benötigt, wenn der Benutzer dort etwas reinschreinen soll.
Oder einen Textcursor, den dazu benutzt, um z.B. per Makro etwas in die Zelle zu schreiben. Zwischne diesen beiden Cursorn gibt es "Welten".
Ich brauche in diesem Fall den sichtbaren Textcursor, der Benutzer soll etwas in eine Zelle schreiben können.
Toxitom hat geschrieben: Im Übrigen hast du recht: Auch Tabellenzellen in Texttabellenen haben "Namen", und zwar sowohl Indexbasiert(also (1,1) z.B.) als auch Namensbasiert (B2).
Vielen Dank ;)

Gruß Yeti
Toxitom
********
Beiträge: 3769
Registriert: Di, 12.08.2003 18:07
Wohnort: Wiesbaden
Kontaktdaten:

Beitrag von Toxitom »

Hey Yeti,

Ich brauche in diesem Fall den sichtbaren Textcursor, der Benutzer soll etwas in eine Zelle schreiben können.
Na, dann ist es einfach. Der Code plaziert dir den Viewcursor in die Zelle "B2" der ersten Tabelle im Dokument:

Code: Alles auswählen

Sub ViewCursorPlazieren
	oDoc = thisComponent
	oViewC = odoc.getCurrentController().getViewCursor()
	oTab = oDoc.getTextTables().getByIndex(0)
	oZelle = oTab.getCellByName("B2")
	oViewC.gotoRange(oZelle, false)	
End Sub
Den Rest kannst du selber anpassen :-)

Gruss
Thomas
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
yeti
*****
Beiträge: 324
Registriert: Mi, 20.10.2004 12:11
Wohnort: Emmendingen

Beitrag von yeti »

Vielen Dank!
Hat funktioniert. Mal schauen ob ich noch hinter die Logik komme. Im Grunde ist es klar.

Schönen Tag noch!
Gruß Yeti

PS: Buch ist bestellt, dürfte Samstag oder Montag bei mir sein. Dann kann es ja richtig los gehen ;)
Antworten