「〜を着ている」という状態を表す際、wearと同じ意味合いで口語で非常によく使われるのがhave onです。
「What do you have on?(どんな服を着ているの?)」や「She had a red dress on.(彼女は赤いドレスを着ていた)」のように、目的語をhaveとonの間に挟む形で用いられます。wearよりもくだけたカジュアルな響きを持ち、日常会話の臨場感をぐっと引き上げる便利なイディオムです。
動作動詞と状態動詞の違いまとめとして整理すると、動作(一瞬のアクション)は「put on」、状態(着ている最中)は「wear」または「have on」と分類して頭に入れておくと迷いません。