Please post your VI so we can see what you are doing. Normally, the button should be placed inside of its event case so that it can be read and unlatched automatically when the event occurs. You wouldn't have to hit the button twice. So I'm thinking there is some off about your VI architecture.
Put your Ring control in the event case as well. What happens is that the Ring control gets read right away, so it gets read with its old value before you have a chance to change it to something else and hit OK.