Article: Q156873
Product(s): Microsoft FoxPro
Version(s): WINDOWS:3.0b,5.0,6.0
Operating System(s):
Keyword(s): kbvfp300 kbvfp500 kbvfp600
Last Modified: 14-DEC-1999
-------------------------------------------------------------------------------
The information in this article applies to:
- Microsoft Visual FoxPro for Windows, versions 3.0b, 5.0, 6.0
-------------------------------------------------------------------------------
SYMPTOMS
========
Setting the Caption property of an object in the Paint event causes Visual
FoxPro to recursively call the event.
CAUSE
=====
Setting or changing the Caption property repaints the object. However,
repainting a form or tool bar triggers the Paint event. Therefore, Visual FoxPro
enters into a recursive loop.
RESOLUTION
==========
Do not place code in the Paint event that causes a form or toolbar to repaint.
Place code that refreshes a form or toolbar in an event that does not call
itself recursively. For instance, if the Caption of a label requires changing,
place the code in the Refresh method, LostFocus, or Click event of an object.
STATUS
======
This behavior is by design.
MORE INFORMATION
================
Steps to Reproduce Behavior
---------------------------
WARNING: Close all running applications and save your data before following this
procedure. To close all open applications in Windows 3.1, press the CTRL+ESC
keys to open the Windows Task List, and then close all the other applications
you have running. In Windows 95 and Windows NT, press the CTRL+ALT+Delete keys
simultaneously to invoke the Close Dialog window or the Task Manager,
respectively. The following the steps will cause Visual FoxPro to enter into a
recursive loop. Therefore, Visual FoxPro must be shutdown using either the
Windows Task List, Close Program dialog box, or Task Manager.
1. Create a form called Test.
2. Add the following code to the Paint event of the form:
ThisForm.Label1.Caption="ABC"
WAIT WINDOW PROGRAM() TIME .1
3. Add a label called Label1.
4. Run the form. FoxPro continuously calls the Paint event.
Additional query words: kbdsd VFoxWin
======================================================================
Keywords : kbvfp300 kbvfp500 kbvfp600
Technology : kbVFPsearch kbAudDeveloper kbVFP300b kbVFP500 kbVFP600
Version : WINDOWS:3.0b,5.0,6.0
=============================================================================