PUBLIC f1 f1 = CREATEOBJECT("form1") f1.SHOW() **************************************** DEFINE CLASS form1 AS FORM TOP = 0 LEFT = 0 DOCREATE = .T. CAPTION = "Form1" NAME = "Form1" ADD OBJECT container1 AS CONTAINER WITH ; TOP = 48, ; LEFT = 60, ; WIDTH = 156, ; HEIGHT = 37, ; NAME = "Container1" PROCEDURE container1.INIT THIS.TAG = "abrakadabra" THIS.BORDERWIDTH = 0 THIS.TAG = ALLTRIM(THIS.TAG) lnPieces = LEN(THIS.TAG) LOCAL ARRAY acolors[lnPieces] * Use whatever way to fill the colors array RAND(-1) FOR N = 1 TO lnPieces acolors[n] = RAND() * 100000 ENDFOR ******* LOCAL ARRAY aletters[1] * or you can use one array for letters/colors DIMENSION aletters(lnPieces) lnLeft = 0 FOR N = 1 TO lnPieces aletters(N) = SUBSTR(THIS.TAG, N, 1) lcLabel = "label" + ALLTR(STR(N)) THIS.ADDOBJECT(lcLabel, "label") WITH THIS.&lcLabel. .CAPTION = aletters(N) .AUTOSIZE = .T. .VISIBLE = .T. .FORECOLOR = acolors[n] .LEFT = lnLeft lnLeft = lnLeft + .WIDTH ENDWITH ENDFOR THIS.WIDTH = lnLeft THIS.HEIGHT = THIS.&lcLabel..HEIGHT ENDPROC ENDDEFINE * **************************************************