Infobulle avec ombre pour tout windows

Soyez le premier à donner votre avis sur cette source.

Vue 6 659 fois - Téléchargée 766 fois

Description

Bonjour,

dans le cadre d'une appli perso, j'ai crée cette form qui est destinée à être une infobulle mono ligne.
la fonction "affiche" doit être appelée sur un mousemove d'un contrôle et affiche le texte du tag du contrôle.
Cela peut être n'importe quoi comme contrôle mais un bouton est plus destiné.
Elle s'affiche centrée par rapport a la position de la souris lors de l'appel.

Pour l'effacer il suffit d'appeler la fonction "affiche" sans contrôle en paramètre.

Vous allez me dire mais pourquoi diantre créer son infobulle ?
Bien parce que l'application sur laquelle je suis provient de VB3, migré en VB4 , migré en VB6 et puis c'est sympa de faire sa form perso d'infobulle pour apprendre.

L'originalité est qu'elle possède une ombre personnalisable par constante. En fait cela permet d'avoir une ombre même sous 95 puisque j'utilise quelques APIWindows pour cela.

Vous trouverez dans le code les déclarions de API à mettre en global pour qu'elle fonctionne ainsi que la fonction permettant d'assombrir un pixel.

J'en ait pas eu besoin de le faire, mais vous pouvez l'améliorer facilement avec un timer pour l'affichage et pourquoi pas faire une petite animation.

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Messages postés
10
Date d'inscription
samedi 28 février 2004
Statut
Membre
Dernière intervention
28 avril 2006

Bonjour,

voila voila , c'est mis à jour.
Vraiement désolé , il manquait beaucoup de chose pour que ce soit exploitable.

j'espere qu'avec un exemple ca ira mieux.
Douin
Messages postés
796
Date d'inscription
jeudi 17 mai 2001
Statut
Membre
Dernière intervention
5 mai 2009
7
Je rejoins l'avis de VIOLENT_KEN : très mauvaise source en tous points !
- Code manquant
- démo foireuse
- technique inefficace

Conseil : renseigne-toi sur ce qu'est une vraie infobulle et les techniques utilisées dans Windows.

Guy
Messages postés
1812
Date d'inscription
mardi 31 mai 2005
Statut
Membre
Dernière intervention
26 octobre 2010
1
Alors...

Tout d'abord j'ai du batailler 10min avec les bribes de sources que tu nous donne pour avoir un résultat.
Ensuite :

1) Manque des déclarations :
Public Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
Public Declare Function ShowWindow Lib "user32" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long

Public Type POINTAPI
X As Long
Y As Long
End Type

2) Et la fonction ComposantesRGB ?? On la trouve où ??

3) La notice d'utilisation de ta form ?? Ce que tu dit n'est absolument pas suffisant.

4) Le résultat n'est pas génial : mauvais positionnement de l'infobulle, infobulle qui ne veut pas s'en aller...etc

BREF : très mauvaise source comme elle est présentée. J'attend un petit moment avant de noter (3/10) voir si tu fait quelque chose.
@+
Messages postés
510
Date d'inscription
samedi 29 décembre 2001
Statut
Membre
Dernière intervention
23 mai 2008

Ca me paraît fastidieu et ca ne marche pas... En tout cas ce que j'ai pu remarquer c'est que tu utilises des API pour récupérer la position de la souris, alors que les variables X & Y fonctionnent très bien et sont prédéfinies.

Je ne note pas pouyr l'instant, j'aimerai voir ce que ca donne...
Messages postés
2493
Date d'inscription
jeudi 14 juillet 2005
Statut
Contributeur
Dernière intervention
5 juin 2016
1
Dim PosSouris As POINTAPI :
ca plante. type non défini ...

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.