RaiseEvent() de istedigin objenin istedigin eventini parametre ile cagirabiliyorsun.
Aslinda bindevent(),raiseevent() vs ye ihtiyacin olmadigini anlatmaya calisiyorum. Mesela VFP6 ve sonrasinda cok daha basit sekilde yapabilirsin:
*Form.init
thisform.myHandler = newobject('myTextBoxHandler','myClassLib.Prg')
*myTextBox::SomeMethod
parms
thisform.myHandler.SomeMethod(parms)
VFP6 SP3 ve sonrasinda compile runtime'da destekli. text...endtext ile yaz istedigini compile et. Istedigin zaman myHandler'i degistir vs
Daha basit bir yol assign kullanmak olabilir (VFP6 icin bindevent hem de parametreli:)
myTextbox::SomeDummyProperty
myTextbox::SomeDummyProperty_Assign
lparameters v_NewVal
*v_NewVal tum parameterleri iceren object
ne istersen yap burada...
loNewHAndler = newobject('newHandler','genericonthefly.prg')
loNewHandler.DispatcherMethod(v_newVal)
*this.Value = v_NewVal && hic birsey assign edilmeyecek
* Formda bindevent yerine mesaj yayinla
thisform.SetAll('SomeDummyPorperty',oParms[,ClassesToCall])
Ya da FoxyClasses'in objUDFCollector classinin ExecAll() methodu :)
Cetin
>Tam olarak anlatamadým veya raiseevent hakkýnda yeterli bilgim yok. Gerard'ýn örneði biraz yardým ediyor. Bindevent ile textboxlara sýrayla istediðim method u baðlýyorum. ama o methot içinde this kelimesini kullandýðým zaman o method un tanýmlandýðý nesne referansýný veriyor bana. mesela benimkinde bir form bu. gidip o formun referansýný veriyor.
>
>raiseevent anladýðým kadarýyla bir event ýn gerçek anlamda tetiklenmesini saðlýyor. normalde bir event ý çaðýrýnca içindeki kodlar çalýþýr ama event normalde yaptýðý iþi yapmaz. raiseevent ta bu iþi de yapýyor ayrýca. öyle deðil mi?
>
>
>>>I hope I can tell it with my bad English. :(
>>>
>>>Bindevent can push a method from form (sample) to my textboxes. But I reveal when use "this" keyword in that binded method this give me my forms object reference. I mean with bindevent, "my forms method" not exactly supplant "my textboxes event". It seems it can only supply a hook. Is it possible when I use "this" I get textboxes object instead of my form?
>>
>>Metin,
>>I think your original question (previous thread) neither need bindevent() nor VFP8.
>>Anyway if you want to go that way try RaiseEvent() instead.
>>Cetin