Steve,
Ok, can I ask why you are using your own DBF to store these form designs instead of the native SCX/VCX files for forms and classes?
You can create a "builder" that will convert your dbf into regular VFP forms that would be saved in that manner instead of dbf. A little bit of alternate coding can just build your form on the fly without needing to resort to writing PRG files out of this process.
For example a builder looks like:
create form test nowait
aselobj( laX, 1 )
loForm = lax[1]
for i = 1 to 5
lcName = "txt" + transform( i )
loForm.AddObject( lcName, "textbox" )
loControl = eval( "loForm." + lcName )
with loControl
.Top = i * 25
endwith
endfor
you could also make it just a simple runtime form generator:
goForm = createobject( "form" )
goForm.Visible = .t.
for i = 1 to 5
lcName = "txt" + transform( i )
goForm.AddObject( lcName, "textbox" )
loControl = eval( "goForm." + lcName )
with loControl
.Top = i * 25
.Visible = .t.
endwith
endfor
but now the form is just a running instance of a form. You'd have to have saved your procedure info into classes that you can reuse.
>I have a table myForm.dbf with the infor for each class in it.
>It has fields for class name, kind of object, procedures, info for listboxes,
>and values for top, left, width, height. There is one record for each class defintion.
>
>There is a prog create_classes.prg for taking the info
>from each record and writing the class definitions, and putting into one prg file, myform.prg.
>
>At the end of the program, I set proc to myForm.prg. Then use createobject("contact"),
>to bring up the form in the procedure file.
>
>This works fine, the form comes up. But it seems that after the first run,
>nothing changes in terms of what comes up on the screen unless I exit and restart
>vfp.
>
>For instance, in the myform.dbf, there is a field for the LEFT position of the form
>called cLeft. If I want to change the value for LEFT postion of any object,
>I should be able to change the value
>in the myForm.dbf, run create_classes.prg and then see the changes on the screen.
>
>However, unless I quit VFP, I do not see changes in the position of
>objects, even though the changes show in the class definitions written in the procedure
>file myForm.prg.
>
>It is for this reason that I have assumed that something must be
>holding the memory of the first values generated by the create_classses.prg. Trying to remove
>anything from memory, I have therefor been trying different combinations of clear all,
>clear class, clear program (to remove the procedure file).
>
>But these are all new commands to me and I am admittedly very
>clumsy at them since I have not previously programmed with forms. This is what is happening
>and what I am trying to fix.