Strona 1 z 1

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

: wt kwie 09, 2013 3:14 pm
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

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

: wt kwie 09, 2013 5:48 pm
autor: mg2

Kod: Zaznacz cały

oSel = oTree.getSelection().getDisplayValue()
msgbox(oSel)
PS
Proszę dodawaj działający załącznik.

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

: śr kwie 10, 2013 8:01 am
autor: JackK
Dzięki za pomoc.