No advice on the 2yr old or the 5yr old sorry.

The 4yr old and whinging, my ds1 did this. Basically I just ignored him. Sounds horrible but I told him once that 'mummy doesn't understand whinging' and left it at that. If he whinged I went about what I was doing until he stopped or got bored and walked away. If he walked away I would wait a minute then go see him and ask him if he wanted something when he came up to me earlier. This way he'd know I noticed him, but I wasn't aknowledging the whinging. Make sense? It took a little while but it sunk in and all good now.

Good luck!