Establishes whether or not the tab background is drawn flicker free.

Usage

Set_Property(OLECtrlEntID, "OLE.FlickerFree", Boolean)

Values

[True | False]

Default: False

Remarks

The FlickerFree property can be used to remove the flickering problem commonly seen when using the Height property, particularly when using auto height. The flickering occurs because the tab's background is drawn many milliseconds after the parent window has already erased the background.

To activate flicker free drawing, simply set this property to TRUE during your window's CREATE event.

This property acheives flicker free drawing by using a Windows technique called Subclassing and works quite well while being very efficient. However, subclassing a parent window from within a child ActiveX control comes with limits. You may freely use this property as long as you strictly adhere to the following rules:

Rule #1: Always set this property back to FALSE during your window's CLOSE event. (You can set this during the pre-system or post-system CLOSE event).

Rule #2: You must have a persistent window that (A) exists longer than the window using FlickerFree and (B) contains at least one SRP OLE Control (even if it's invisible). For this reason, the topmost persistant window may never use FlickerFree.

Failure to strictly follow the aforementioned rules may result in application crashes and/or memory leaks.

The rules above are not meant to scare you away from using the property. If used correctly the functionality is safe, efficient, and produces much more pleasant results. Feel free to contact SRP Computer Solutions, Inc. if you experience problems with this property or would simply like a more thorough explanation

Example

// Turn on flicker free (during CREATE event) 
Set_Property(@Window:".OLE_TAB", "OLE.FlickerFree", 1) 

// Turn off flicker free (during CLOSE event) 
Set_Property(@Window:".OLE_TAB", "OLE.FlickerFree", 0)

See Also

Height

  • No labels