>publi oform >oform=newObject("asup") >oform.show >read events >retu >* >DEFINE CLASS asup AS form > BorderStyle = 0 > Top = 0 > Left = 45 > Height = 312 > Width = 276 > ShowWindow = 2 > Caption = "Form1" > MaxButton = .F. > BackColor = RGB(212,210,208) > Name = "Form1" > > ADD OBJECT optiongroup1 AS optiongroup WITH ; > AutoSize = .T., ; > ButtonCount = 15, ; > BackStyle = 0, ; > BorderStyle = 0, ; > Value = 1, ; > Height = 293, ; > Left = 28, ; > Top = 11, ; > Width = 78, ; > Name = "Optiongroup1", ; > Option1.Caption = "Option1", ; > Option1.Value = 1, ; > Option1.Height = 17, ; > Option1.Left = 5, ; > Option1.Top = 5, ; > Option1.Width = 61, ; > Option1.Name = "Option1", ; > Option2.Caption = "Option2", ; > Option2.Enabled = .F., ; > Option2.Height = 17, ; > Option2.Left = 5, ; > Option2.Top = 24, ; > Option2.Width = 61, ; > Option2.Name = "Option2", ; > Option3.Caption = "Option3", ; > Option3.Height = 17, ; > Option3.Left = 5, ; > Option3.Top = 43, ; > Option3.Width = 61, ; > Option3.Name = "Option3", ; > Option4.Caption = "Option4", ; > Option4.Height = 17, ; > Option4.Left = 5, ; > Option4.Top = 62, ; > Option4.Width = 61, ; > Option4.Name = "Option4", ; > Option5.Caption = "Option5", ; > Option5.Height = 17, ; > Option5.Left = 5, ; > Option5.Top = 81, ; > Option5.Visible = .F., ; > Option5.Width = 61, ; > Option5.Name = "Option5", ; > Option6.Caption = "Option6", ; > Option6.Height = 17, ; > Option6.Left = 5, ; > Option6.Top = 100, ; > Option6.Visible = .F., ; > Option6.Width = 61, ; > Option6.Name = "Option6", ; > Option7.Caption = "Option7", ; > Option7.Height = 17, ; > Option7.Left = 5, ; > Option7.Top = 119, ; > Option7.Width = 61, ; > Option7.Name = "Option7", ; > Option8.Caption = "Option8", ; > Option8.Height = 17, ; > Option8.Left = 5, ; > Option8.Top = 138, ; > Option8.Visible = .F., ; > Option8.Width = 61, ; > Option8.Name = "Option8", ; > Option9.Caption = "Option9", ; > Option9.Height = 17, ; > Option9.Left = 5, ; > Option9.Top = 157, ; > Option9.Width = 61, ; > Option9.Name = "Option9", ; > Option10.Caption = "Option10", ; > Option10.Height = 17, ; > Option10.Left = 5, ; > Option10.Top = 176, ; > Option10.Width = 68, ; > Option10.Name = "Option10", ; > Option11.Caption = "Option11", ; > Option11.Height = 17, ; > Option11.Left = 5, ; > Option11.Top = 195, ; > Option11.Width = 68, ; > Option11.Name = "Option11", ; > Option12.Caption = "Option12", ; > Option12.Height = 17, ; > Option12.Left = 5, ; > Option12.Top = 214, ; > Option12.Width = 68, ; > Option12.Name = "Option12", ; > Option13.Caption = "Option13", ; > Option13.Enabled = .F., ; > Option13.Height = 17, ; > Option13.Left = 5, ; > Option13.Top = 233, ; > Option13.Width = 68, ; > Option13.Name = "Option13", ; > Option14.Caption = "Option14", ; > Option14.Height = 17, ; > Option14.Left = 5, ; > Option14.Top = 252, ; > Option14.Width = 68, ; > Option14.Name = "Option14", ; > Option15.Caption = "Option15", ; > Option15.Enabled = .F., ; > Option15.Height = 17, ; > Option15.Left = 5, ; > Option15.Top = 271, ; > Option15.Width = 68, ; > Option15.Name = "Option15" > > ADD OBJECT command4 AS commandbutton WITH ; > Top = 12, ; > Left = 120, ; > Height = 27, ; > Width = 84, ; > Caption = "Arrange", ; > Name = "Command4" > > PROCEDURE Destroy > clea events > ENDPROC > > PROCEDURE command4.Click > create cursor ycurs (num i) > > with thisform.optionGroup1 > > for i=1 to .buttonCount > if .buttons(i).enabled=.f. > .buttons(i).visible=.f. > endi > > if .buttons(i).visible=.t. > insert into ycurs values (i) > endi > endfor > *brow > > local m.xtop,m.rec,m.num0 > m.xtop=10 > local m.xspace > m.xspace=2 &&spacing between 2 options > > sele ycurs > scan > rec=recno() > if m.rec=1 > .buttons(num).top=xtop > else > go m.rec-1 > m.num0=num > go rec > .buttons(num).top=.buttons(m.num0).top+.buttons(m.num0).height+m.xspace > endi > endscan > > endwith > ENDPROC > >ENDDEFINE >* >*-- EndDefine: asup >