Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Subclassing OptionButton
Message
From
05/10/1998 10:28:34
 
 
To
05/10/1998 10:19:43
Cetin Basoz
Engineerica Inc.
Izmir, Turkey
General information
Forum:
Visual FoxPro
Category:
Classes - VCX
Miscellaneous
Thread ID:
00143846
Message ID:
00143872
Views:
26
>>Am trying to add an OptionGroup to my class library and want to incorporate my own properties & methods with the associated OptionButtons.
>>
>>However the OptionButton is not one of those available for subclassing in the Class Browser.
>>
>>The ButtonCount of the OptionGroup will vary each time I add my new class to a form. Will I have to create the OptionGroup class with the maximum number of Buttons forseen and then change the ButtonCount property to a lower number ? Or is there a better way ?
>>
>>- Werner
>Werner,
>You could subclass the "buttons" nonvisually.
oForm = createobject("Form")
>with oForm
>	.addobject("MyoptGrp","Optiongroup")
>	with .MyoptGrp
>		.buttoncount = 5
>		for ix = 1 to 5
>			.removeobject("Option"+ltrim(str(ix)))
>			.addobject("Option"+ltrim(str(ix)),"myoption",;
>				"Hello"+ltrim(str(ix)), ix)
>		endfor
>		.setall("Visible",.t.)
>		.autosize = .t.
>		.visible = .t.
>	endwith
>	.addobject("myquitter","myquit")
>	.myquitter.visible = .t.
>endwith
>oForm.show
>read events
>
>define class myoption as optionbutton
>	fontname = "Arial"
>	fontbold = .t.
>	fontitalic = .t.
>	autosize = .t.
>	procedure init
>	lparameters tcCaption, tnPos
>		this.caption = tcCaption
>		this.left = 1
>		this.Top  = tnPos * (this.height + 2)
>	endproc
>
>	procedure click
>		=rand(-1)
>		this.forecolor = rgb(int(rand()*255), ;
>	                         int(rand()*255), ;
>	                         int(rand()*255))
>	endproc
>enddefine
>
>define class myquit as commandbutton
>Autosize = .T.
>Caption="Close"
>procedure init
>	this.left = this.parent.width - this.width - 2
>	this.top  = this.parent.height - this.height - 2
>endproc
>procedure click
>    release all
>	clear events
>endproc
>enddefine
Cetin

Thanks, and I understand your suggestion, but I want to be able to repeatedly use my OptionGroup with my OptionButtons in the Form Designer. Is there a way to programatically add classes to a class library and make them a permanent part of that library ?

- Werner
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform