try not to be so hard on yourself. Something happens, remember things could always be worse. Remind yourself that if things seem to be taking a long time that it's never as time consuming as it seems. Life doesnt' work out and if you sabotage your day, life will throw stones at you. I'm not tryign to sound cliche but it has been a problem for me too.
Leehype is right: laugh it off. Shoe laces get untied, so double tie them. if you get angry about it, think of something funny or just laugh at them. I remember once in college I had to write an 10 page report. I was on a roll and hadn't saved anything since I didnt' want to interrupt my train of trought. The paper was due the next day and it was about 2am the night before. Well I made it to page eight and still on a roll. THe power went out in the dorm and ALL 8 PAGES were erased. Instead of gettign angry because there was nothign I coudl do about it, I just went loco. I started laughing and running around in the hallways while laughing my ass off. People thought I was crazy! I think I was actually.... *shrug* but damn that laugh felt good. When there is nothing you can do to change the situation, then make the best of it in your own way. I don't fight traffic. If you fight traffic you dont' get very far....'cept maybe an anurism or heart attack from the stress it puts on your blood pressure. Traffic happens, so instead of gettign upset about it, I turn on the radio and sing to it. It passes the time and it's fun, not to mention often lanes open up that I can take and it helps me move forward faster. It only happens when I don't try to move ahead though. It really works wonders!
The point is, don't take life so seriously. Laugh off what what you can't change, try to avoid the situations that piss you off (like double knotting your shoe laces so they don't come apart as often), and try to think of good things when you are having a bad day.