>>>I've added the _mouseover class to a form; the form runs in a top-level form. The form works fine when running along, but when I run it as part of the app, or exe, it behaves oddly.
>>>
>>>If I mouse over the navigation controls that use the effects, and then use the "X" to close the form, the X suddenly disables (and the CLOSE is gone from the Windows menu). If I place the mouse back over one of the other controls I get:
>>>
>>>Data type mismatch
>>>highlightme
>>>Line 34
>>>
>>>Line 34 is:
>>>
>>>WITH This.oHost
>>>
>>>then a string of successive error messages appears, each relating to the various expressions inside the WITH.
>>>
>>>After adding the mouseover effects class I added cancelhighlight to the control container and the form (something that is not used in TASTRADE). And I also added this code to prevent disabled controls from being highlighted:
>>>
>>>*MouseMove of each button
>>>if thisform._datanavbtns1.cmdtop.enabled=.t.
>>>THISFORM._mouseOverFX1.HighlightMe(this)
>>>endif
>>>
>>>Any ideas how I can resolve this?
>>
>>
>>Sounds like you have a hanging object reference some where in your code. Be sure to NULL out any stored object references you may have in your form destroy event.
>
>For fear of sounding REALLY stupid, how do I do this?
>
>TIA,
For example: Say you've created an object reference property on your form to some control on the form.
MyForm.MyObjectRef = MyForm.TextBox1
When you do your form Destroy Method, you should put a this.MyObjectRef = .NULL. there, otherwise you'll have a "dangling object reference" that will prevent your form from closing properly.
Does this help?