I was working on this when jpols was playing around with a color chooser. Probably not very useful, but it does demonstrate the ability to 'dynamically' create KiXform objects using the Execute command...
code:
Break On Cls
Dim $Color[48]
$frmColor = CreateObject("KiXtart.Form")
$frmColor.Size = 220,270
$frmColor.Caption = "Color"
$fraColor = $frmColor.Frame("Color Selected",10,160,195,40)
$lblColor = $fraColor.Label("",10,15,175,15)
$btnColorOK = $frmColor.Button("OK",10,$fraColor.Bottom+10,50,20)
$btnColorCncl = $frmColor.Button("Cancel",$btnColorOK.Right+10,$fraColor.Bottom+10,50,20)
For $x = 16777215 to 0 step -356962.02127659574468085106382979
$l = $l + 1
$Color[$l]=$x
Next
For $lTop = 10 to 145 Step 25
For $lLeft = 10 to 185 Step 25
$lGrid = $lGrid + 1
$nul=Execute("$$picGrid"+$lGrid+" = $$frmColor.PictureBox('',$lLeft,$lTop,20,20)")
$nul=Execute("$$picGrid"+$lGrid+".BackColor = $Color[$lGrid]")
$nul=Execute("$$picGrid"+$lGrid+".OnClick = 'ColorChooser($lGrid)'")
Next
Next
$frmColor.Center
$frmColor.Show
While $frmColor.Visible
$NUL = Execute($frmColor.DoEvents)
$Chooser ?
Loop
Function ColorChooser($lGridN)
$nul = Execute("$$Chooser = $$picGrid"+$lGridN+".BackColor")
$nul = Execute("$$lblColor.BackColor = $$picGrid"+$lGridN+".BackColor")
EndFunction