von ezuehlke » Fr, 07.07.2006 10:06
Hallo,
ich suche innerhalb eines Dokumentes ein bestimmtes Wort, hierfür nutze ich den XSearchDescriptor.
Code: Alles auswählen
private Object wortSuchen(String gesucht) {
Object range = null;
try {
XTextDocument xTextDocument =
(XTextDocument)UnoRuntime.queryInterface(XTextDocument.class, xDocument);
XSearchable xSearchable =
(com.sun.star.util.XSearchable)
UnoRuntime.queryInterface(
com.sun.star.util.XSearchable.class, xTextDocument);
XSearchDescriptor xSearchDescr =
(com.sun.star.util.XSearchDescriptor)
xSearchable.createSearchDescriptor();
xSearchDescr.setSearchString(gesucht);
XPropertySet xSearchProp =
(com.sun.star.beans.XPropertySet)
UnoRuntime.queryInterface(
com.sun.star.beans.XPropertySet.class, xSearchDescr);
xSearchProp.setPropertyValue("SearchCaseSensitive",new Boolean(true));
xSearchProp.setPropertyValue("SearchWords",new Boolean(true));
range = (Object) xSearchable.findFirst(xSearchDescr);
XTextRange test = (XTextRange) range;
} catch( Exception e) {
e.printStackTrace(System.err);
}
return range;
}
Jetzt geht es mir um die Rückgabe von findFirst(), laut API ist es ein Objekt von XInterface, das wiederum die Mutter von allem ist (einfach ausgedrückt).
Über diese Suche möchte ich gerne eine Start und eine Endposition im Dokument ermitteln (zwei Wörter, Ausgeblendet(Hidden)), dieser Bereich wird anschließend durch die Anwendung berarbeitet (XTextRange?)
Hat jemand eine Lösung, ein Ansatz, wie ich an diese Positionen komme? Gibt es ein besseren Weg?
(weiteres zum Thema :
viewtopic.php?t=6861&start=0&postdays=0 ... tbaustein)
Hallo,
ich suche innerhalb eines Dokumentes ein bestimmtes Wort, hierfür nutze ich den XSearchDescriptor.
[code]
private Object wortSuchen(String gesucht) {
Object range = null;
try {
XTextDocument xTextDocument =
(XTextDocument)UnoRuntime.queryInterface(XTextDocument.class, xDocument);
XSearchable xSearchable =
(com.sun.star.util.XSearchable)
UnoRuntime.queryInterface(
com.sun.star.util.XSearchable.class, xTextDocument);
XSearchDescriptor xSearchDescr =
(com.sun.star.util.XSearchDescriptor)
xSearchable.createSearchDescriptor();
xSearchDescr.setSearchString(gesucht);
XPropertySet xSearchProp =
(com.sun.star.beans.XPropertySet)
UnoRuntime.queryInterface(
com.sun.star.beans.XPropertySet.class, xSearchDescr);
xSearchProp.setPropertyValue("SearchCaseSensitive",new Boolean(true));
xSearchProp.setPropertyValue("SearchWords",new Boolean(true));
range = (Object) xSearchable.findFirst(xSearchDescr);
XTextRange test = (XTextRange) range;
} catch( Exception e) {
e.printStackTrace(System.err);
}
return range;
}
[/code]
Jetzt geht es mir um die Rückgabe von findFirst(), laut API ist es ein Objekt von XInterface, das wiederum die Mutter von allem ist (einfach ausgedrückt).
Über diese Suche möchte ich gerne eine Start und eine Endposition im Dokument ermitteln (zwei Wörter, Ausgeblendet(Hidden)), dieser Bereich wird anschließend durch die Anwendung berarbeitet (XTextRange?)
Hat jemand eine Lösung, ein Ansatz, wie ich an diese Positionen komme? Gibt es ein besseren Weg?
(weiteres zum Thema :
[url]http://de.openoffice.info/viewtopic.php?t=6861&start=0&postdays=0&postorder=asc&highlight=textbaustein)[/url]