The \(y\)-position of form element texts and label texts differ
because the form elements have an inner and outer border.

We use text fields to show the labels and make the borders
invisible. So label text and form element text is at the same
\(y\)-position now.

We create a white border for the labels
\begin{lstlisting}
bordercolor={1 1 1}
\end{lstlisting}
and set text alignment to right-aligned:
\begin{lstlisting}
align=2
\end{lstlisting}
\lstinputlisting{../examples/ex0004.tex}
