2 of our oldest and still standing rules are:
1) You don't get what you want if you whine.
2) You don't get what you want if you throw a fit.
At six, I can pretty much just say "whining", and my son will IMMEDIATELY correct his tone of voice. The throwing a fit we have more problems with...but...you throw a fit, you don't get it. Whether it's a toy, candy, to leave, to stay...whatever it is, you don't get it.
A friend of ours says "you get what you get and you don't throw a fit"...which works great for them...but we like direct causal relationships.
Nope...sorry honey...you threw a fit about the gum. It's not happening. Maybe next time.
We also don't let it bug us. IE, no negative reaction to either...just "not gonna happen". If a fit got thrown in the store when our son was little, and it was apparent it was going to go on for a while...I set my basket down, took him outside and sat by the door. We weren't going home, we weren't going to finish shopping, until he was done. Then, we'd go back inside and finish. No Matter What he didn't get what he threw a fit about. Next time, if he asked nicely, and DIDN'T throw a fit we MIGHT get it.
I'll tell you, a lot of people think we "spoil" our son, because we, too, get him a lot...especially when he asks for it...and even MORE frequently when HE pays for all of it (or half for big things). We mostly get him small things...like grapes or goggles or a lollipop. Things we'd be getting him anyway. But he has to behave and be thoughtful in order to get it...and in order to KEEP it. We do say "nope" a lot. But we buy him things, and he saves his money for things, and he gives his money away.
(He's already bought 1/2 of the cost of our puppy...has paid for 1/2 his phone...and is currently saving for a 1/2 a laptop. When he has half, we match it. It took him 2 years to save for our puppy...and is going to be slightly longer for the laptop because he gave 60 dollars away to a kids' summer lunch program. No matter what, it's still Mum's rules...even if "he" bought it. We do draw the line at flamethrowers and foghorns. ;) Mostly...he buys Eclipse sweet mint gum and strawberry frappuccinos from starbucks.)
It's ironic that it's those same people, who say "omigod how could you allow your son to get x" who ALSO comment on how polite he is...and how well he takes being told "no". Like it would be impossible that we could do both at the same time. Easy? No. 100%? HA!!!
______________Personal Story Time_________________
I'll never forget the time I was sitting outside the door of the grocery store (pretending not to be mortified, and just repeating to the sobbing thrashing 3 year old..."Sorry, honey, I love you...but you threw a fit. So you don't get it. We're going to wait until you've calmed down and then we're going to finish shopping. No we're not going home. No we're not going to the car. I know you're embarrassed love. Nothing to be embarrassed about. You're LEARNING. I know, honey, I'm sorry too, and I love you...but you threw a fit..." Over and over. (He kept calming down enough to either say he was embarrassed and wanted to go...or since he'd calmed down could he have "x" and when I said no, would start up again.
Sigh. This happened a couple of times, before he "got" it. And of course, still cropped up from time to time. What made it different that time was that, afterward in the store, I was seriously questioning my own actions (I felt like I was breaking his HEART...poor little love), and seriously considering getting him the "x" as a reward for calming down ...when a VERY old lady came up to me and patted me on the shoulder, looked me in the eye, and said "good job". And my SON stood up straight and puffed up his chest in that little toddler way, and smiled. He knew HE was doing a good job, too. Now.
Usually the childless would give me a glare, or at best I'd get a long suffering grin from another parent. But that was the only time anyone ever said anything to me. Perfect timing. I Seriously needed that. And I'll never forget it.