Your browser does not seem to support JavaScript. As a result, your viewing experience will be diminished, and you have been placed in read-only mode.
Please download a browser that supports JavaScript, or enable it if it's disabled (i.e. NoScript).
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().
LONG
GeDialog.GetInt32(ID_MY_LONG)
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