Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Returning 2 values from a form
Message
From
11/05/1999 17:26:40
 
General information
Forum:
Visual FoxPro
Category:
Forms & Form designer
Miscellaneous
Thread ID:
00217461
Message ID:
00217484
Views:
20
>>>I would like to return both a date and a string from a form. What is a good way to do this?
>>>
>>>- return an array (possible?)
>>>- pass values by reference
>>>- other?
>>
>>Pass the form a Parameter Object. That way you can update as many values as you could possibly ever need.
>
>That sounds cool. No idea how to do it though. Any code samples you could point me to?


Define your object programmatically.

DEFINE CLASS parameterobject AS custom
MyNumVal = 0
MyCharVal = ''
MyArray[5] = .f.
ENDDEFINE

*
* Populate the parameter object's properties
*
oParam = CREATEOBJECT('parameterobject')
oParam.MyNumVal = 5
oParam.MyCharVal = 'Test string'
oParam.MyArray[2] = DATE()
oParam.MyArray[5] = 'samples'
*
* Now call your form with the object
*
DO MyForm WITH oParam

MyForm:Init
LPARAMETER tobject
thisform.PObject = tobject

Other methods:
thisform.Pobject.MyNumVal = 100
etc...


Your form's init event declares it is receiving the parameter and updates the values as needed. These updates can take place anywhere in your form if your form has a property to store the reference. Now, when you get back from your form, the parameter object has the updated values and you can do whatever you need to with them. Kind of like global variables, only better!
Fred
Microsoft Visual FoxPro MVP

foxcentral.net
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform