![]() |
OpenOffice Selektiertes Textfeld
Hallo zusammen,
ich versuche mich gerade an der OLE Automation von Open / Libre Office. Konkret will ich die Eigenschaften von einem in OpenOffice aktuell selektieren Textfeld abfragen. Im WWW findet man hier und da ein paar Codeschnipsel, die man zusammensetzen kann. Ich kann auf selektierten Text zugreifen:
Delphi-Quellcode:
Und ich kann durch alle Textfelder iterieren und auf deren Eigenschaften zugreifen:
var Selections:Variant;
Sel:Variant; TextFieldEnum, TextField, Master:Variant; Selections:=myDoc.getCurrentSelection; TextFieldEnum := Selections.getByIndex(0).createEnumeration; if Selections.supportsService('com.sun.star.text.TextRanges') then begin Sel:=Selections.getByIndex(0); msgbox(Sel.String); end;
Delphi-Quellcode:
Ich bräuchte aber die Eigenschaften des Selektierten Textfeldes, falls eins selektiert ist. In etwa so:
TextFieldEnum := myDoc.getTextFields.createEnumeration;
While TextFieldEnum.hasMoreElements do begin TextField := TextFieldEnum.nextElement; Master := TextField.getTextFieldMaster; If TextField.supportsService('com.sun.star.text.textfield.DateTime') Then msgbox('Date/time') Else If TextField.supportsService('com.sun.star.text.textfield.Annotation') Then msgbox('Annotation') Else msgbox(Master.Name); end;
Delphi-Quellcode:
Hat jemand sowas schon mal gemacht, oder eine Idee?
Selections:=myDoc.getCurrentSelection;
TextFieldEnum := Selections.getByIndex(0).createEnumeration; if Selections.supportsService('com.sun.star.text.TextRanges') then begin Sel:=Selections.getByIndex(0); if Sel.isTextField then // das gibt es nicht msgbox(Sel.Name); end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:30 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz