Important alert: (current site time 7/16/2013 2:46:17 AM EDT)
 

winzip icon

VB ExTooltip

Email
Submitted on: 4/2/2005 3:44:03 PM
By: MArio Flores G 
Level: Advanced
User Rating: By 99 Users
Compatibility: VB 5.0, VB 6.0
Views: 31705
(About the author)
 
     ExTooltip Class is the First Full VB Open Source from Scratch written code, that allows you to create AWESOME Customizable tooltips. Display any custom Icon of Your Choice. ToolTip can be standard rectangle, or Balloon style like windows 2000/XP Make Your Balloon Tooltip Semi-Transparent (Works on All Windows) Add Any Color, Gradient or Picture of your choice to the Background. Use any Custom Font you want on each Tooltip. And more!! The Ultimate Tooltip code you will want to use! Updates at http://www.geocities.com/sistec_de_juarez/ExTooltip/

 
winzip iconDownload code

Note: Due to the size or complexity of this submission, the author has submitted it as a .zip file to shorten your download time. Afterdownloading it, you will need a program like Winzip to decompress it.Virus note:All files are scanned once-a-day by Planet Source Code for viruses, but new viruses come out every day, so no prevention program can catch 100% of them. For your own safety, please:
  1. Re-scan downloaded files using your personal virus checker before using it.
  2. NEVER, EVER run compiled files (.exe's, .ocx's, .dll's etc.)--only run source code.
  3. Scan the source code with Minnow's Project Scanner

If you don't have a virus scanner, you can get one at many places on the net including:McAfee.com

 
Terms of Agreement:   
By using this code, you agree to the following terms...   
  1. You may use this code in your own programs (and may compile it into a program and distribute it in compiled format for languages that allow it) freely and with no charge.
  2. You MAY NOT redistribute this code (for example to a web site) without written permission from the original author. Failure to do so is a violation of copyright laws.   
  3. You may link to this code from another website, but ONLY if it is not wrapped in a frame. 
  4. You will abide by any additional copyright restrictions which the author may have placed in the code or code's description.


Other 23 submission(s) by this author

 


Report Bad Submission
Use this form to tell us if this entry should be deleted (i.e contains no code, is a virus, etc.).
This submission should be removed because:

Your Vote

What do you think of this code (in the Advanced category)?
(The code with your highest vote will win this month's coding contest!)
Excellent  Good  Average  Below Average  Poor (See voting log ...)
 

Other User Comments
4/2/2005 3:57:16 PMMArio Flores G

If You Like This Code, Comment and Vote Here!!
(If this comment was disrespectful, please report it.)

 
4/2/2005 4:05:57 PMXeon Productions

This code r0x0rz my s0x0rz! 5 globes from me!
(If this comment was disrespectful, please report it.)

 
4/2/2005 4:34:20 PMMr_Merlin

Nicely Done. Easy to read, understand and follow.
(If this comment was disrespectful, please report it.)

 
4/2/2005 4:35:10 PMXeon Productions

Let me be more descriptive, this is the best tooltip example i've seen. It has a few bugs, not sure if its just with the interface or with the tooltip class itself. But good work man. I've looked at your other submissions and they have followed the same path of greatness. I respect you!
(If this comment was disrespectful, please report it.)

 
4/2/2005 5:09:40 PMDavid M Rice

WOW! This is very fine stuff. Thank you 1,000 times for sharing it.

(If this comment was disrespectful, please report it.)

 
4/2/2005 5:15:25 PMDaniel W Elkins

At first I was wondering why there is yet another tooltip submission here but then I saw how good it was. Definately the best I've seen. Nice work...will definately use this one.
(If this comment was disrespectful, please report it.)

 
4/2/2005 5:55:02 PMMArio Flores G

Minor Update.- Ups on me, the Tooltip automatically restarted all the Default values every time the tooltip Die (pretty normal),but when the mouse was still on the calling control didn’t seem correctly, added WM,DESTROY Message, to notify. Should work better
(If this comment was disrespectful, please report it.)

 
4/2/2005 7:20:18 PMMatthew R. Usner

I've seen your other submissions (most of them anyway) and you're one of the few that people should almost automatically give 5 globes to. Thanks for a very cool submission.
(If this comment was disrespectful, please report it.)

 
4/2/2005 10:25:47 PM

coool !! 5 globes
(If this comment was disrespectful, please report it.)

 
4/3/2005 12:33:27 AMAnders Lyman

Another great submission from Mario!
5 from me.
(If this comment was disrespectful, please report it.)

 
4/3/2005 1:38:08 AM

Excellent 5 from me.
(If this comment was disrespectful, please report it.)

 
4/3/2005 3:34:36 AMMil-X Pro

Very cool, and the transparency works in Win98 (this is the one I admired most). Easy and advance. Thanks for sharing. 5*.
(If this comment was disrespectful, please report it.)

 
4/3/2005 3:36:18 AMMil-X Pro

What I mean 'easy' is the codes is clean and well managed.
(If this comment was disrespectful, please report it.)

 
4/3/2005 5:25:39 AMPhantom Man

Well Done MArio The Most Clean And Advanced Tooltip Yet.

Thanks For Sharing.

Kind Regards
Gary
(If this comment was disrespectful, please report it.)

 
4/3/2005 5:46:39 AMPhantom Man

Mario

Thought you Should Know:
When You Set The Tooltip To ttBalloon And ttShadow It Works Fine, But When The Balloon Tip First Shows Try To Hover Over The Balloon Tip and It Disappears (Which Is Correct) And Another One Will Show In A Couple Of Seconds As A Rectangular Tip.

I Hope That Makes Sense. (Tested On XP Pro And Home SP2)

Kind Regards
Gary
(If this comment was disrespectful, please report it.)

 
4/3/2005 7:14:28 AMcarniv0re

Superb! 5 globes from me.
(If this comment was disrespectful, please report it.)

 
4/3/2005 8:16:29 AMWSC

Fantastic tool that can give a really professional look to our apps. I gave 5 globals.
(If this comment was disrespectful, please report it.)

 
4/3/2005 10:27:05 AMPaul Caton

Mario, some of the subclass methods are Public... surely they should be marked Private, no?

Anyway, thanks for the suggestion of a self-sub class, I'll update the self-sub submission soon.

And congrats on the code, excellent!
(If this comment was disrespectful, please report it.)

 
4/3/2005 12:37:56 PMKevin Precht

Mario, thank you for sharing this piece of code. 5 Globes from me! I'm not yet at the level where I know all of the considerations involved in writing this, but you've written such a clear and well documented piece of code that I will surely be able to learn valuable lessons from it. Way to go, and thanks again!

Kevin
(If this comment was disrespectful, please report it.)

 
4/3/2005 1:30:23 PMHidroilio Perez

as always 10 points
(If this comment was disrespectful, please report it.)

 
4/3/2005 5:34:45 PMelbarto

Nice code!
Is there a way to show the tooltip on labels? labels don't have a hwnd...
(If this comment was disrespectful, please report it.)

 
4/3/2005 7:43:08 PMAbhishek.NET

it looks like you got inspired from http://www.teebo.com/tssBalloonTip.htm same fearures, great work. 5 stars
(If this comment was disrespectful, please report it.)

 
4/3/2005 10:48:53 PMThushan Fernando

Excellent work:-)
(If this comment was disrespectful, please report it.)

 
4/4/2005 2:42:45 AM

Excellent - thanks for sharing and for commenting so well! 5 from me!

One question - is it possible to make it so that the tool tip will position itself over a text box rather than where the pointer is. I am hoping to use it in an app where the user enters a password and to warn them if the caps lock is on (in a similar way to XP) but I want the tool tip to be positioned by the text box where the password will be entered rather than where the mouse pointer is - any hints on how to re-position it would be greatly appreciated.
Thanks, Doug.
(If this comment was disrespectful, please report it.)

 
4/4/2005 4:12:42 AMJB

All I can say is WOW. Excellent work, as always. Five BIG onions from me!!!
(If this comment was disrespectful, please report it.)

 
4/4/2005 4:42:28 AMMArio Flores G

To: Phantom Man
The problem is that the label is triggering the Tooltip instead of the PictureBox.

Minor Fix:
Bug with Control Mouse Coords,
if The Calling Control Had Child Controls,the Tooltip didn’t reset M_ExWindow.Flag,
Added “If mAlive =True” before Flag is
Fired, with this,the Tooltip ignores
any Child Window or Windowless controls
if mouse is moved in same cords.
(Only calling controls Mouse movements are valid)

See Changes in WM_TIMER
(If this comment was disrespectful, please report it.)

 
4/4/2005 5:31:27 AMMArio Flores G

Minor Update, The ToolTip wasn’t
destroyed when the user clicked on the
calling control
(natural Tooltip
behavior). Added WM_MOUSEACTIVATE Message.

Thanks All for your
Support,if you found any bugs please
contact me.

(If this comment was disrespectful, please report it.)

 
4/4/2005 5:57:05 AM_Merlin_

This is pretty good stuff.
5 balls worth!

Merlin is the name, and logic is my game...
(If this comment was disrespectful, please report it.)

 
4/4/2005 6:39:10 AMLibor Blaheta

does ExTooltip support Unicode and RtL reading?
(If this comment was disrespectful, please report it.)

 
4/4/2005 9:04:29 AMPhantom Man

Thanks Mario!

Gary
(If this comment was disrespectful, please report it.)

 
4/4/2005 12:28:32 PMtHa_imaX

d*mn! not bad!
youve got my vote!

keep on coding!
(If this comment was disrespectful, please report it.)

 
4/4/2005 1:42:23 PM

We have April's winner.
(If this comment was disrespectful, please report it.)

 
4/4/2005 3:17:41 PMMatthew R. Usner

He'll probably have 200 5-globe ratings, and deserves every one of them.

(If this comment was disrespectful, please report it.)

 
4/4/2005 4:29:41 PM¿?¿?

Awesome! I can predict you will be this months winner even though we have 26 more days left =)
(If this comment was disrespectful, please report it.)

 
4/4/2005 7:10:13 PMDean Camera

Wow! 5 globes. I agree; this is excellent, and definetly this month's winner.

- Dean
(If this comment was disrespectful, please report it.)

 
4/4/2005 10:58:54 PMHeriberto Mantilla Santamaría

Hi MArio, this class is brilliant, alone believes that one can say wow.

Congratulations.
(If this comment was disrespectful, please report it.)

 
4/5/2005 3:07:28 AMgshawn2

one of the best submissions I have ever seen. *****
(If this comment was disrespectful, please report it.)

 
4/5/2005 4:16:51 PMDaniel W Elkins

Found a bug, if the ShowToolTip method is called twice in a row, for example, using it on a click event, and the user clicks it twice, it will crash VB. In the class's ShowToolTip sub's code, after the "With" statement, simply add a: "if malive = true then exit sub". Also, no matter what I do I can't seem to get my own pictures to show up on the tooltip. Any ideas?
(If this comment was disrespectful, please report it.)

 
4/5/2005 4:45:22 PMDaniel W Elkins

Nevermind, I fixed the icon problem.
(If this comment was disrespectful, please report it.)

 
4/5/2005 10:46:16 PMBugzy

Amazing piece of work MArio, thanks for the effort!
(If this comment was disrespectful, please report it.)

 
4/6/2005 9:15:23 AMAlT

Mario, you misspelled the word 'width' in one of your comments contained within the ShowToolTip Sub.....

The point being...it was the only thing I could find to knock. ;-) This sh1t is good!
(If this comment was disrespectful, please report it.)

 
4/6/2005 3:05:51 PMDarryn Frost

Good, clean, professional code.
(If this comment was disrespectful, please report it.)

 
4/7/2005 7:38:36 AMenmity

to:Daniel W Elkins
I think your pictures are not properly displayed is because you use not Bitmap file such as icon/bmp, but gif etc. Same problem here.
(If this comment was disrespectful, please report it.)

 
4/7/2005 8:52:18 PM

Very Good

Does not support UniCode.
Asked how I do want to do.
(If this comment was disrespectful, please report it.)

 
4/8/2005 11:44:08 AM

Great work! 5 from me!
(If this comment was disrespectful, please report it.)

 
4/9/2005 3:42:00 AMPaul Turcksin

Superb! This post has it all. Useful, attractive, fast, reliable, ... Thanks for sharig this jewel. @@@@@
(If this comment was disrespectful, please report it.)

 
4/10/2005 1:35:23 AMpao_francis

Very nice code. Does the balloon or the tooltip has a effect (Alpha Blend Load) just like the balloon shown in windows xp?
(If this comment was disrespectful, please report it.)

 
4/11/2005 1:09:31 PMFred.cpp

great! otro primer lugar para ti ;)
five balls
(If this comment was disrespectful, please report it.)

 
4/13/2005 8:47:26 AMBrendon Pilt

5* from me
(If this comment was disrespectful, please report it.)

 
4/14/2005 12:12:07 PMMArio Flores G

'When Calling Control Hwnd is Always on TOP'

in the "ChangeWindowStyles Function"

Change This Line

ChangeWindowStyles = SetWindowPos(ThWnd, 0, .x - .bExt, .y + .aExt, .Width, .Height + Abs(.aExt), SWP_NOACTIVATE Or SWP_NOZORDER Or SWP_FRAMECHANGED)

To This Line

ChangeWindowStyles = SetWindowPos(ThWnd, -1, .x - .bExt, .y + .aExt, .Width, .Height + Abs(.aExt), SWP_NOACTIVATE Or SWP_FRAMECHANGED)

will update the ZIP Later.

(If this comment was disrespectful, please report it.)

 
4/15/2005 1:23:24 PMLOBO TOTAL

this is copied!!!!
(If this comment was disrespectful, please report it.)

 
4/15/2005 6:31:07 PMHeriberto Mantilla Santamaría

To LOBO TOTAL

You to that him this calling copy.
(If this comment was disrespectful, please report it.)

 
4/15/2005 6:42:50 PMMatthew R. Usner

lobo total. total lobotomy. whatever.

(If this comment was disrespectful, please report it.)

 
4/15/2005 6:44:39 PMMatthew R. Usner

you should be kicked off this site for making such a baseless accusation and then giving him a one star vote on a superior piece of software that a dingus like you couldn't write in a million years. what a lame p.o.s. you are.

(If this comment was disrespectful, please report it.)

 
4/15/2005 10:13:29 PMMArio Flores G

To LOBO TOTAL, I don’t believe you even saw the code, you don’t have any idea of what you are talking about, maybe you just saw the image preview and accuse me of copying something that you have seen done in different ways, with some similar results, but I can assure you that this is different, and voting 1 globe – and rating me poor category, wont stop me from coding VB code, as I know that since I don’t see any of your code posted on PSC, I can guess you are just a fake account. and mostly sure just a jealous person.
(If this comment was disrespectful, please report it.)

 
4/15/2005 10:15:47 PMMArio Flores G

For the Record I hate Fake accounts!!
(If this comment was disrespectful, please report it.)

 
4/17/2005 12:16:35 AMHeriberto Mantilla Santamaría

To LOBO TOTAL

Pense que en esta Web se habían acabado los fantoches, ya veo que no aún existen algunos.

I thought that in this Web the puppets had finished, I already see that not, some are still.
(If this comment was disrespectful, please report it.)

 
4/18/2005 1:15:41 AMHeriberto Mantilla Santamaría

Hello Mario, I wanted to know for that the subclass delays so much in beginning.
(If this comment was disrespectful, please report it.)

 
4/18/2005 5:35:36 AMRichard Mewett

Anonymous & fake user accounts seem to be spreading rapidly. Too many meaningless 1* votes appearing, probably out of jealousy. I give my 5* for great submission. Perhaps an "Appeal" button should be added (similar to report bad submission) so that authors can get the l@mers votes removed.
(If this comment was disrespectful, please report it.)

 
4/18/2005 12:53:59 PMMatthew R. Usner

Good idea. 74 5-globe ratings and 1 1-globe rating is a automatic grounds for "Lame-o" appeal.

(If this comment was disrespectful, please report it.)

 
4/19/2005 5:46:33 AMRichard Mewett

Thanks Matthew. I have sent my suggestion to PSC!
(If this comment was disrespectful, please report it.)

 
4/22/2005 4:00:36 AMKaizen

In your demo if you set it to balloon and then set the delay time to 0 it not show as a balloon. Apart form that nice work.
(If this comment was disrespectful, please report it.)

 
4/22/2005 3:17:35 PMKnoton

Wow, thanks for sharing. I long to examine the goodies in your code further :-) Hope I will get time for that any time soon :-)
(If this comment was disrespectful, please report it.)

 
4/27/2005 9:38:40 AMLibor Blaheta

Hi, is version 1.1 the final version? Or you are going to release new version next month?
(If this comment was disrespectful, please report it.)

 
4/27/2005 12:51:32 PMMArio Flores G

Enmity PSC Format Suxs, example was unreadable check this
http://web.1asphost.com/marioflores/Extooltip/
(If this comment was disrespectful, please report it.)

 
4/29/2005 12:48:38 AMenmity

MArio, I just have to tell you, the new sample you give me does not work either. I do not know why, just nothing happen.

I am using Simplfied Chinese version of Windows 2003 Server.
(If this comment was disrespectful, please report it.)

 
4/29/2005 7:36:38 AM

Hi,

It is brilliant way of programming and made it great work. :)
(If this comment was disrespectful, please report it.)

 
4/29/2005 10:33:07 AMLibor Blaheta

>> to enmity

ExToolTip is based on ANSI APIs (CreateWindowEx is used to create a tool-tip window) so IMHO it's not possible to display chinese chars in tooltips.

Only replace all ANSI APIs with their Unicode equivalents and than you have unicode usercontrol :-)
(If this comment was disrespectful, please report it.)

 
5/3/2005 12:00:25 AMKaizen

As a mod you can add mKillTime = Len(Text) * 4 in showTooltip sub so you do not have to add kill time each time you show a tool tip. This will calculate the correct kill time based on the amount of text you have.
(If this comment was disrespectful, please report it.)

 
6/2/2005 12:38:58 AMDaniel Sitnik

Great work!!
(If this comment was disrespectful, please report it.)

 
8/25/2005 11:50:54 AMMoroco

Really Great work, but it crashes under Windows ME .

(If this comment was disrespectful, please report it.)

 
8/29/2005 2:09:15 AMtibisan

SUPREEEME!!! 5 balls all tha way!
(If this comment was disrespectful, please report it.)

 
8/30/2005 9:21:36 AMBaljit Singh

Eyeful tooltip(code)!5 globes from me.
(If this comment was disrespectful, please report it.)

 
9/4/2005 6:41:52 PMJohan A

Good pice of programing, 5 globes from me. It is just great :)
(If this comment was disrespectful, please report it.)

 
9/7/2005 8:25:42 PMMike Douglas

omg. beautiful. sorry it took so long to play with it.
(If this comment was disrespectful, please report it.)

 
5/29/2006 4:02:58 AMTDMJames

Works on all windows except the listview apparently.
(If this comment was disrespectful, please report it.)

 
10/12/2006 7:13:07 PMJair Cézar

Is the best !!!
(If this comment was disrespectful, please report it.)

 
2/28/2007 4:52:22 PMKris Bennett (i00 Productions)

how can i get this working in vista?
(If this comment was disrespectful, please report it.)

 
3/15/2007 1:29:29 AMKris Bennett (i00 Productions)

ok .. figured it out - how to get working in vista - took me all of 5 mins - thought it would take longer so put it off ...

to get working in vista search for the line that starts "pDraw GetDC(" in the class module ExToolTip and put DoEvents on a new line above it
:)
(If this comment was disrespectful, please report it.)

 
4/26/2007 11:23:23 AMjosejoa

Hi Mario, How does this code can fit on the systray? Thank you.
(If this comment was disrespectful, please report it.)

 
8/31/2007 9:46:48 PMAbhijit

Hi Mario,

Great Code! Is it possible to add OnDemand functionality to the tooltip? Thanks!
(If this comment was disrespectful, please report it.)

 
12/21/2008 3:28:56 AMJuned Chhipa

Mario You rocks!
Thank you very much bro.....
love you!
(If this comment was disrespectful, please report it.)

 
7/18/2009 3:31:30 AMFrancisco Antonio de Araujo e Souza

Hi Mario!

VB ExTooltip: Coool! 5555555555555 Globes !!!!!!

Great job !!!!!!!!!! thank you!!!!

One of the best programs of the planet-source !

A question:

I have an array of controls in a form:

picture (0), picture (1), picture (2), picture (3), ... picture (n)

Question: How do a different message (tooltiptext) for each picture (x) with just one routine?

Thank you!

Francisco Araujo
(If this comment was disrespectful, please report it.)

 

Add Your Feedback
Your feedback will be posted below and an email sent to the author. Please remember that the author was kind enough to share this with you, so any criticisms must be stated politely, or they will be deleted. (For feedback not related to this particular code, please click here instead.)
 

To post feedback, first please login.