Sure, Dave, here's the one in CVS head:
http://fisheye.openacs.org/browse/OpenACS/openacs-4/packages/spreadsheet/www/example-form.tcl
The qf_* code is a small part of it:
# build form
qf_form action example-form id i99
qf_input type text value $input_array(full_name) name full_name label $title_array(full_name) id i967 size 40 maxlength 50
qf_append html "<br>"
qf_input type text value $input_array(email_address) name email_address label $title_array(email_address) id i968 size 40 maxlength 80
qf_append html "<br>"
qf_input type text value $input_array(subject) name subject label $title_array(subject) id i969 size 40 maxlength 80
qf_append html "<br>"
qf_textarea name message rows 30 cols 40 label $title_array(message) value $input_array(message)
qf_append html "<br>"
qf_append html "\ "
qf_append html "<a href=\"example-form\">Clear form</a>"
qf_append html "\ "
qf_input type hidden name validated value $validated
qf_close
set form_html \[qf_read \]
form_html is then passed to the adp template.