Hi everyone
I have a popupmenu who’s (on change), change the listindex number of an other popupmenu
Is there a way to know if the change was made by user OR by an other popupmenu chain reaction
i need to stop the chain before the one i’v change myself
Thanks
Many ways to handle this, but one relatively easy way is to:
- Create a subclass of popupmenu
- Create a new boolean property in the class named IsSoftSetting
- Create a new event definition named Change
- Create a new event handler for Change and put in the code:
if IsSoftSetting=false then
RaiseEvent Change
end if
5. Create a new method to “softSet” the popup. I use one that sets it based on a rowtag, but you can do whatever you want between the booleans.
[code]Sub SoftSet(v as variant)
IsSoftSetting=true
for i as integer=0 to me.ListCount-1
if me.RowTag(i)=v then
me.ListIndex=i
exit
end if
next
IsSoftSetting=false
End Sub
[/code]
Now just use SoftSet(rowTag) when you don’t want Change to fire.
Thanks Tom
yes its pretty easy, and logic