* Example, by Garrett Fitzgerald * http://blog.donnael.com/2004/06/vfp9-report-sample/ CREATE CURSOR crsrFontList ( ; cFont char(32)) llGotFonts = AFONT(laFonts) FOR i = 1 TO ALEN(laFonts) INSERT INTO crsrFontList VALUES (laFonts(i)) ENDFOR CREATE REPORT fontList FROM DBF("crsrFontList") loListen = CREATEOBJECT("myFontListener") REPORT FORM fontList PREVIEW OBJECT loListen DEFINE CLASS myFontListener as ReportListener ListenerType = 1 PROCEDURE EvaluateContents LPARAMETERS nFrxRecno, oObjProperties oObjProperties.FontName = ALLTRIM(cFont) oObjProperties.Reload = .T. ENDPROC ENDDEFINENow, it is easy to see how an object's .FontName is dynamically changed, and looking at the help file it should also be easy to change additional properties, such as .FontSize or color.