Zrobiłem niemodalny dialog, w którym mam opcję dodawania fragmentów tekstu do dokumentu. Nie wiem jednak, jak zrobić, by po dodaniu takiego fragmentu aktywny był dokument, a nie w dalszym ciągu dialog. To znaczy: chcę, aby po pojawieniu się w dokumencie dodanego fragmentu tekstu kursor był tuż za nim i by "był aktywny", czyli po wpisaniu czegoś z klawiatury litery mają się pojawić w miejscu kursora (po dodaniu fragmentu z dialogu, focus powinien być na dokumencie).
Mam kod:
Kod: Zaznacz cały
dlgQH.setVisible(true)
Dialog_close = false
do until Dialog_close
if selectedInTree <> "" then ' dialog ustawił zmienną, która zawiera fragment do wyświetlenia
oDoc = ThisComponent
oText = oDoc.getText()
oVCurs = oDoc.CurrentController.getViewCursor()
oTCurs = oText.createTextCursorByRange(oVCurs.getStart())
oText.insertString(oTCurs, selectedInTree, FALSE) ' dodanie fragmentu
selectedInTree = ""
' nie wiem, dlaczego listener trzeba znów dodać, bo przestał reagować
oListener = createUnoListener("Select_","com.sun.star.view.XSelectionChangeListener")
oTree.addSelectionChangeListener(oListener)
end if
wait(50)
loop