Userform controls' balloon tooltips not showing in Excel 64-bit

rplazzotta

New Member
Joined
Oct 28, 2021
Messages
41
Office Version
  1. 2019
  2. 2010
Platform
  1. Windows
Can anyone help with my BalloonToolTips class? It works in Excel 32-bit (W7 and W10) but not in Windows 10 Excel 64-bit, even though it compiles without errors.
It's old VB6 code that I've adapted for VBA (VBA only exposes hWnds for Frames and Listboxes).
So I put any controls other than the above that require a multiline "ControlTipText" in a caption-less Frame with the Userform's bordercolor and I put the control's ControlTipText in that of the Frame.
It's the only way I've found to provide multiline tooltips for such controls.

But they just don't show in Excel 64-bit. Any help would be greatly appreciated.

http://www.wot.fr/BalloonToolTipDemo.zip

Richard
 

Excel Facts

What is the fastest way to copy a formula?
If A2:A50000 contain data. Enter a formula in B2. Select B2. Double-click the Fill Handle and Excel will shoot the formula down to B50000.
Hi - I think I may have had a similar issue, which I managed to fix. I've tried to download the ZIP file, but Chrome doesn't appear to let me download it for some reason. Can you possibly post the code here?
 
Upvote 0
Hi - I think I may have had a similar issue, which I managed to fix. I've tried to download the ZIP file, but Chrome doesn't appear to let me download it for some reason. Can you possibly post the code here?
Hi Dan, yes I'll post the code, but try downloading this rar file first (with password (today's date in YYYYMMDD format) and file name encryption). If you don't have Winrar, let me know and I'll post the code (1 .cls file, 2 .bas files and 1 userform). Do try and open the rar file, because I've added screernshots on Sheet1 showing the different renderings of my balloon tooltips in W7, W10 Office 32-bit and W10 Office 64-bit.

http://www.wot.fr/BalloonToolTipDemo.rar
 
Upvote 0
I just tried this one with a different browser - MS Edge says that it can't be downloaded securely. Perhaps it just doesn't trust wot.fr? How about Dropbox or Google Drive, etc?
 
Upvote 0
Hi Richard. I have finally managed to download the file without incident! Thank you for that.
I have had a moment to take a quick look at the file. I have to confess that I originally thought you were referring to the System Tray Balloon Tooltip - something I struggled with for a while when I first started using 64bit Excel, so thought this would be straightforward. I see now that you clearly wrote Userform controls' balloon tooltips, so my apologies for not reading it properly.

My first thought was that there might be mistakes in the API declarations, because that usually seems to be cause, but nothing jumps out at me. I will need to take a closer look either after work today or tomorrow, if that's ok. Unless someone else in the forum has any thoughts? (he says loudly in to the dark, empty void...)

I can confirm, though, that it is indeed possible to do balloon tooltips in 64bit Excel - one of the forum members, Jaafar Tribak regularly posts workbooks demonstrating the use of API calls, and he has done (at least) two or three on balloon tooltips. At this post (LINK), he creates balloon tooltips that appear when you hover over worksheet tabs - though not strictly userform controls/hWnd-relevant, the method is the largely the same, and so it may be worth downloading the workbook has uploaded there and just test that it works on your system. The fifth comment in that thread has a screen capture of what it should look like.

Given that it's worked for you in 32 bit, and now it doesn't, and given that we know it can be done in 64bit, I'm gravitating back to my first gut reaction. I'll take another look at his code, and see how he accomplished it, to see if there is anything different with yours. I will ask around to see if anyone else I know experienced with API calls have any views.
 
Upvote 0
Thanks Dan for taking the time. I had already looked at Jaafar's excellent balloon tooltips.
They work perfectly, but they're not directly relevant (as you've pointed out).
I really need them on several userforms, not on InputBox or on sheet tabs, although these are very nice.
I too have tried to see how it's done in the latter, but I must admit it's beyond me.

Maybe Excel 64-bit doesn't expose hWnds for UserForm Frames and Listboxes, unlike Excel-32-bit, I don't know.

I can only echo your "Unless someone else in the forum has any thoughts?" (Jaafar maybe)

Richard
 
Upvote 0
Dan, forget what I just said in my previous post, Excel 64-bit does expose hWnds, as the listbox in my userform proves.
So something must be missing in my BalloonToolTips class code (Sendmessage something? Or other API calls?)

Richard
 
Upvote 0
Maybe Excel 64-bit doesn't expose hWnds for UserForm Frames and Listboxes, unlike Excel-32-bit, I don't know.
I'm not sure what you mean by this. It's been a while since I've used 32-bit Excel, but I don't recall either the Userform or the Frames/Listbox having an 'obvious' hwnd property - is that what you mean? The hWnds are certainly accessible through using APIs - I think from when I looked at your code, you've also used the FindWindow API (or example), no? 64-bit Excel is no different.

Recently, I've been trying to get on top of GDI/GDIP graphics API calls, so being able to get the hWnd and hDC has been pretty important - they are definitely there, but just not for all userform controls. In delving into this area, I've had to convert a lot of VB6 projects, and the lack of a Picturebox control (with a hwnd, etc) was painful. So I've been developing a class to reproduce the same properties and methods of a picturebox by superimposing them over a frame control because it has a hWnd! But what I have only just learnt as of a few months ago is that the frame control does have a hidden hwnd property:

VBA Code:
hWnd  = Frame1.[_getHwnd]

So definitely they definitely exist. I know the InkEdit control has a hWnd property, as does ListView, I think.
 
Upvote 0

Forum statistics

Threads
1,224,828
Messages
6,181,209
Members
453,023
Latest member
alabaz

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top