[SOLVED] Jak odczytać, co zostało wybrane w TreeControl?

Makropolecenia i funkcje w języku Basic
JackK
Posty: 23
Rejestracja: czw kwie 04, 2013 11:41 am

[SOLVED] Jak odczytać, co zostało wybrane w TreeControl?

Post autor: JackK »

Cześć.
Mam taki kod:

Kod: Zaznacz cały

Dim oTree As Object
Sub ShowDialog_qH
	DummyTxt="c:\input.txt"
	f1 = FreeFile()
	Open DummyTxt for Input as #f1

	Dim libStandard
   	Dim libDialog
   	DialogLibraries.loadLibrary("Standard")
   	libStandard = DialogLibraries.getByName("Standard")
   	libDialog = libStandard.getByName("queryHint_Dialog")
   	dlgQH = CreateUnoDialog(libDialog)

   	oTree = dlgQH.getControl("drzewo")
   	oTreeModel = oTree.Model

	oMutableTreeDataModel = createUnoService("com.sun.star.awt.tree.MutableTreeDataModel")
	oRootNode = oMutableTreeDataModel.createNode("ALL", true)
	oMutableTreeDataModel.setRoot(oRootNode)

	Dim oChildNode
	Do while NOT EOF(f1)
		Line Input #f1, s
		if InStr(s, "# ") = 1 then
		   	oChildNode = oMutableTreeDataModel.createNode(Mid(s, 3, 100), true)
		   	oRootNode.appendChild(oChildNode)
	   	elseif InStr(s, "## ") = 1 then
            Dim oSubChildNode
            oSubChildNode = oMutableTreeDataModel.createNode(Mid(s, 4, 100), false)
            oChildNode.appendChild(oSubChildNode)
		end if            
	Loop
	Close #f1

	oTreeModel.DataModel = oMutableTreeDataModel
   	oTree.DefaultExpandedGraphicURL = FOLDER_OPEN
   	oTree.DefaultCollapsedGraphicURL = FOLDER_CLOSED 
   dlgQH.execute
End Sub 'ShowDialog_qH

Sub Cos_sie_stalo
	Dim oSel
	oSel = oTree.getSelectedText()
	MsgBox oSel
End Sub
Plik input.txt:
# PIS_DEKL||Zapytanie z danymi deklaracji||
## AD_KOD_POCZTOWY||||
## AD_KOR_AD_KOD_POCZTOWY||||
## AD_KOR_KR_NAZWA||||
## AD_KOR_KT_NAZWA||||
## AD_KOR_MS_NAZWA||||
## AD_KOR_NR_DOMU||||
## AD_KOR_NR_LOKALU||||
# JK_T2||||
## COLA||||
## COLB||||
## DUMMY||||
W dialogu mam ten TreeControl oraz przycisk, który przy naciśnięciu wywołuje makro Cos_sie_stalo. Niestety pojawia się wtedy błąd:
Nie znaleziono właściwości lub metody: getSelectedText
Co jest nie tak?

Jacek
Ostatnio zmieniony śr kwie 10, 2013 8:02 am przez JackK, łącznie zmieniany 1 raz.
OpenOffice 3 na Windows 7
mg2
Posty: 170
Rejestracja: czw sty 28, 2010 9:20 pm

Re: Jak odczytać, co zostało wybrane w TreeControl?

Post autor: mg2 »

Kod: Zaznacz cały

oSel = oTree.getSelection().getDisplayValue()
msgbox(oSel)
PS
Proszę dodawaj działający załącznik.
Załączniki
drzewo.zip
(8.54 KiB) Pobrany 258 razy
OOo3.1.1 na Ubuntu 9.04
JackK
Posty: 23
Rejestracja: czw kwie 04, 2013 11:41 am

Re: Jak odczytać, co zostało wybrane w TreeControl?

Post autor: JackK »

Dzięki za pomoc.
OpenOffice 3 na Windows 7
ODPOWIEDZ