Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
How Do I? Object Reference for a Form
Message
De
25/08/2005 06:27:27
 
 
À
25/08/2005 01:55:27
Donald Lowrey
Data Technology Corporation
Las Vegas, Nevada, États-Unis
Information générale
Forum:
Visual FoxPro
Catégorie:
Codage, syntaxe et commandes
Divers
Thread ID:
01043708
Message ID:
01043738
Vues:
11
>Good evening all
>
>How do I get a global object reference to a form called by a prg file?
>
>I have a modless form (form1) that is called from a prg via DO FORM form1. Another form (form2)is modal and is called by a menu snipet. Form2 runs some code to change a few properties in Form1. Sounds simple enough, and in fact when running this in my development environment it works fine.
>
>BUT, when running my app, The below code fails.
>
>**form2.mycusmeth()
>form1.backcolor = RGB(255,255,255)
>* fails, error "form1 is not an object"
>
>
>I know that the error is caused by Form1 going out of scope, because it was called from a prg. To remedy, I ran the following in the prg file calling form1.
>
>** prg calling form1
>PUBLIC form1 AS Object
>form1 = .f.
>DO FORM "form1.scx" NAME form1
>
>
>Running the form2.mycusmeth() code still throws the same error, "form1 is not an object".
>
>So, Fox gurus, lend me your genius. How to I obtain and retain an object reference to form1?
>
>Thanks in advance
> -DEL

Donald

Not sure but a suggestion:

Why after declaring Form1 as an object do you then initialise it to .F., thus (I presume) dynamically changing it to a logical field?
Why initialise it at all, esp. as you then immediately give it a value with the "Do form "?
Have you tried appending the "linked" clause at the end, scoping the form object to the var? Although Help refers to this as a means of releasing the form when the var goes out of scope, maybe the converse works and it's an aid to maintaining the scope.

HTH

Terry
- Whoever said that women are the weaker sex never tried to wrest the bedclothes off one in the middle of the night
- Worry is the interest you pay, in advance, for a loan that you may never need to take out.
Précédent
Répondre
Fil
Voir

Click here to load this message in the networking platform