An n x n matrix Q is said to be an orthogonal matrix if the column vectors of Q form an orthornormal minimal spanning set of R^n. Prove the following theorem.

An n x n matrix Q is orthogonal if and only if Q^TQ = In (When Q^T is the transpose of Q)

I'm struggling with this.

Q = (Q1, Q2, ..., Qn) so Q^T = Row vector of Q.

So Q^TQ = Is an n x n matrix where the ij components { 1 if i=j or 0 if i =/ j }

So QTQ = In

If you can understand what I put, I kind of proved one way. Could someone help with the full proof?