In my application I use a lot of TAdvStringGrid components and a few of them require balloon hints. They all used to work fine, but something has changed and now none of them work.
If I create a new project with a grid on it and enable the balloon hints, the OnCellBalloon event is called and the balloon hint shows correctly.
If I then copy and paste that working grid in the real application, the hints for it don't work either. There must be something about my application that is interfering with them. Any ideas?
After writing this post, I recalled having this same issue a long time ago. Going back through my emails I found one (in 2009) from Bruno with the following advice:
I see that in your project, XP themes are not enabled. Please add the unit
WinXP or the unit XPManifest and it should work. In order to use balloons,
your app needs to link at runtime with COMCTL v6 and this is invoked by
adding the unit WinXP or XPManifest.
Sure enough, I added WinXP to my main form's uses clause and they are working again. I'm guessing that unit got stripped out by a "uses cleaner" product I tested at some stage. I hope this helps someone else in the future. :)
Seems to work for me without the WinXP in the uses statement.
My problem is that it displays on all cells even though I only define a balloon for a few. For the cells with no balloon added it shows a balloon with no title but with an icon and the content of the cell as the text. How can I prevent balloons on cells where not wanted?
Clear the AText variable (in OnCellBalloon) to stop it appearing.