keypress events execute when a key is simply pressed
keydown events execute ONLY when a key is pressed
keyup events execute ONLY when a key is released

i used keydown and keyup, NOT keypress when messing around with ascii (the integers that represent different keys) to make a label display what keys were held down. keydown added text to the label saying i pressed a key. keyup removed that text. keypress would simply add the text and it would not disappear