SOLVED python combobox get current value

Hey, fairly basic question but I'm pretty new to this and struggling to solve it, I'm trying to write a save script in python, I've filled a combo box with a list of directories, I need to access the string of the currently selected value to link to a second combobox to search for the next folder in the chain, how would I go about doing this? in Houdini I have the same tool working using 'self.ui.jobID.currentText() ' is there a similar function in c4d?

 self.AddComboBox(J_NAME, c4d.BFH_SCALEFIT, initw=300, inith=10)
 self.AddChild(J_NAME,0,'______') 
        self.jobs = 'C:/Users/Olly/Downloads/'
        if os.path.isdir(self.jobs):
        
            # add only directories to list
            i = 0
            dirlist = next(os.walk(self.jobs))[1]
            dirlist.sort()
            for d in dirlist:
                
                if os.path.isdir(self.jobs+d):
                    i += 1                   
                    self.AddChild(J_NAME, i, d)

Thanks!

Hi,

comboboxes, i.e. LONG resource elements, cannot hold a string in Cinema, they will always be of type integer. You can get the value of a LONG element with GeDialog.GetInt32(ID_MY_LONG). If you want to react to value changes (when x changed, change y), you have to overwrite GeDialog.Command().

So if you want to store stuff by their string in a combobox and read the value back, you have to use your own hash table for the mapping.

Cheers
zipit

@zipit Thanks mate, that's done it!

Hello,

For your next threads, please help us keeping things organised and clean. I know it's not your priority but it really simplify our work here.

I've already done for this thread.

I can just confirm what @zipit said. Nothing to add 🙂

Cheers,
Manuel