Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.
Icône de la ressource

démonstration de l'utilisation des api en Excelmacro4 épisode 1 la barre de titre des userforms 2.0

patricktoulon

XLDnaute Barbatruc
patricktoulon a soumis une nouvelle ressource:

démonstration de l'utilisation des api en Excelmacro4 épisode 1 - manipulation de la barre de titre et les boutons de la barre de titre des userforms


En savoir plus sur cette ressource...
 

Toubabou

XLDnaute Impliqué
Bonjour,
Super travail.
Pourriez-vous m'expliquer comment rentrer votre code pour supprimer la barre des titres dans un de mes fichier?
Merci beaucoup
 

patricktoulon

XLDnaute Barbatruc
re
et oui le problème avec les version sup à 2007 et les version W10 et 11
c'est que le redraw est automatiquement forcé
même en découpant CARREMENT!!! la fenêtre de sa barre de titre avec une api region
il suffit de la tenir avec la souris et de déplacer la fenêtre pour redessiner à l’écran la barre de titre
il faudra que je m'y intéresse

inutile de dire que setwindowlong ne fonctionne plus non plus

démonstration du redraw au déplacement de la fenêtre


code utilisé
VB:
Dim hwnd&
Sub Nocaption()
    Dim insideRect As Long, ptopx#, InsideTop#, InsideLeft#, InsidWidth#, InsidHeight#, insideMarge#

    With ActiveWindow.ActivePane: ptopx = (.PointsToScreenPixelsX(72 / (.Parent.Zoom / 100)) - .PointsToScreenPixelsX(0)) / 72: End With

    hwnd = Application.hwnd
    ExecuteExcel4Macro ("CALL(""user32"",""SetWindowLongA"",""JJJJJ""," & hwnd & ", " & -16 & ", " & &H94080080 & ")")      'api SetWindowLongA

    insideRect = ExecuteExcel4Macro("CALL(""gdi32"",""CreateRoundRectRgn"",""JJJJJJJ""," & 0 & ", " & 20 & ", " & Round(Application.Width * 1.33333) & ", " & Round(Application.Height * 1.333333) & ", " & 0 & ", " & 0 & ")")

    ExecuteExcel4Macro ("CALL(""user32"",""SetWindowRgn"",""JJJJ""," & hwnd & ", " & insideRect & ", " & 1 & ")")

    ExecuteExcel4Macro ("CALL(""gdi32"",""DeleteObject"",""JJ""," & insideRect & ")")

    ExecuteExcel4Macro ("CALL(""user32"",""DrawMenuBar"",""JJJJJJ"", " & hwnd & ")")

End Sub
maintenant si il s'agit de tout enlever alors il n'y a pas de soucis mais si tu veux garder le rubant avec les onglets c'est morts(POUR LE MOMENT)
 
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…