Oops!!
I changed the original baseclass to textbox in mid-stream and forgot to correct the later code.
>USE headlib.vcx
>REPLACE baseclass WITH 'header', class WITH 'header' FOR baseclass = 'line'
Should be
>USE headlib.vcx
>REPLACE baseclass WITH 'header', class WITH 'header' FOR baseclass = 'textbox'
I decided to use a textbox for the example, since it has more native properties in common with a header than a line. Basing it on a label originally might be a better idea.
Also, I said properties can be edited directly in the properties memo field; however, it would probably be best to use COPY MEMO and APPEND MEMO for properties, too.
>Actually, it can be, but it's a little tricky.
>
>CREATE CLASS myheader OF headlib AS textbox && or whatever baseclass
>** add custom PEM's, code methods, etc. as if you were in a header class
>** e.g., set FontBold = .T. and FontName = "Symbol"
>** close and save class
>USE headlib.vcx
>REPLACE baseclass WITH 'header', class WITH 'header' FOR baseclass = 'line'
>USE
[snipped]
Insanity: Doing the same thing over and over and expecting different results.