XL 2013 Icône d'aide dans la barre de titre d'un Userform

Achille_1

XLDnaute Nouveau
Bonjour à tous,

Je souhaiterais mettre une icône d'aide (un point d'interrogation, un peu comme excel) pour ouvrir un userform contenant une aide.
Comme sur l'image ci-dessous.
Capture excel.JPG


Est-ce possible ?

Achille
 
Solution
rer
j'ai enlever les alias pour etre sur
VB:
'patricktoulon exceldownload

#If vba7 Then
'trouver le handle
    Private Declare ptrsafe  Function FindWindowA Lib "user32"  (ByVal lpClassName As String, ByVal lpWindowName As String) As Longptr
    'on redessine la barre sinon elle se retrouve en bas de l'userform
    Private Declare ptrsafe Function DrawMenuBar Lib "user32" (ByVal hwnd As Longptr) As Long
    'afficher le userform 1 mode fenetre ,2 mode reduit , 3 plein ecran
    Private Declare ptrsafe Function "ShowWindow" Lib "user32"  (ByVal hwnd As Longptr, ByVal nCmdShow As Long) As Long
    'application des modification
    Private Declare ptrsafe Function SetWindowLongA Lib "user32" (ByVal hwnd As Longptr, ByVal nIndex As Long...

patricktoulon

XLDnaute Barbatruc
re
une petite modif de rien du tout pour empêcher de redimensionner plus petit que la largeur des boutons réunis
VB:
Private Sub UserForm_Resize()
    Dim minWidth As Long, i As Long, l As Long
    Frame1.Width = Me.Width
    For Each ctrl In Me.Frame1.Controls
        i = i + 1
        l = l + ctrl.Width
        ctrl.Left = Frame1.Width - l - 10 - (i * 2)
        minWidth = i * ctrl.Width + (3 * i)
    Next
    If Me.Width < minWidth Then Me.Width = minWidth
End Sub
 

Achille_1

XLDnaute Nouveau
Oui sur windows 10 mais j'ai l'excel 2013 ;)

Ok merci ! Par contre pour ta modif ça marche bien sur la largeur mais sur la hauteur ils peuvent encore être cacher avec le redimensionnement.
+ Est-t'il possible qu'avec un clic gauche enfoncé sur la barre on puisse bouger la fenêtre ?
Comme toutes les autres fenêtres d'ailleurs...
 

patricktoulon

XLDnaute Barbatruc
re
voila une exemple
j'ai ajouter aussi le mousemove
le toulonnais fait mumuse ;)

ps:
pour la hauteur min je te laisse deviner ce qu'il faut faire ;) ;) il faut bien te laisser un peu de travail quand même
tu peux déplacer le userform en restant appuyé sur la fausse caption

demo3.gif
 

Pièces jointes

  • PSEUDO CAPTION.xlsm
    33 KB · Affichages: 13
Dernière édition:

Achille_1

XLDnaute Nouveau
Très bien merci ! et oui je crois pouvoir de débrouiller pour la hauteur je pense avoir compris :)
Une petite dernière chose mais pas sûr que tu saches vu qu'on a pas la même version de windows et d'excel.
j'ai une ligne blanche qui rend le Userform vraiment pas esthétique, saurais-tu comment l'enlever ?

Capture3.JPG
 

patricktoulon

XLDnaute Barbatruc
il est fort possible que le redraw (DrawMenuBar handle)ne fonctionne pas a vérifier

sinon vérifie bien de ne pas avoir ta frame a + de zero et pas de bordure
met la a zéro de top a l'activate pour être sur
me.frame1.top=0:me.frame1.borderstyle=0
ca mange pas de pain ;)
purée té dur en affaire toi ;)
 

Achille_1

XLDnaute Nouveau
Héhé heureusement que tu es là parce que j'aurais cherché pendant des heures et des heures :D
Concernant mon top et mon borderstyle ils sont biens à 0.
Pour le DrawMenuBar comment puisse-je vérifier qu'il marche ? Je t'avoue que je ne connais la fonction :)
Et si il ne fonctionne pas (ce qui possiblement le cas vu que les deux autres paramètres sont à 0) connais-tu un moyen de régler ça ?
 

Discussions similaires

Statistiques des forums

Discussions
312 323
Messages
2 087 301
Membres
103 512
dernier inscrit
sisi235