TDBPlanner: Balloon-tooltips don't work anymore when certain attributes are changed at runtime

Hello,

I am not entirely sure if this is a bug or not, but since it cost me quite some time to find out I wanted to post it here even if it is just so that someone else with the same problem can find this solution:

I implemented an TDBPlanner in one of my applications and simply could not get the balloon-tooltips to be displayed even though there was nothing peculiar about its implementation and on top of that the same application had another instance of the TDBPlanner which displayed them without issues.

Long story short, I used the debugger and discovered that the internal TPlannerGrid.WMNotify, which handles the balloon tooltips, was never triggered.

When I looked for possible reasons for why that might be the case, I discovered that changing certain component attributes at runtime can trigger a handle-recreation which might disturb the correct sending of messages.

This was exactly the case: I was changing the attribute TDBPlanner.Flat at runtime, which triggered DestroyWnd and then recreated the handle. Once I removed this line of code, the balloon tooltips immediately were displayed properly.

As mentioned, I am not sure if this is a bug or simply bad programming on my part, but regardless this might save someone else some time.

Changing Flat indeed causes internally a window handle recreate for which the balloon handling must be reinitialized. We handled this internally in the Planner now so this will be fixed in the next update.