OVH Cloud OVH Cloud

CommandBar qui ne s'ajuste pas aux Controls

4 réponses
Avatar
Polus
Bonjour Chèr(e)s Collègues
Je ne comprends pas pourquoi la Commandbar ne s’ ajuste pas automatiquement
Au nombre de control que j’y ajoute (9 au total) !

Je suis obligé de déclaré un dixième contrôle pour que le neuvième
apparaisse dans la Commandbar.
De plus à la place du dixième j’ai un icône fantôme

Dim MBar As CommandBar
Dim myControl1, myControl2, myControl3, myControl4, myControl5, _
myControl6, myControl7, myControl8, myControl9, myControl00 As Controls

Private Sub CommandButton2_Click()

On Error Resume Next
Application.CommandBars("LES ACTIVITÉS").Delete
Set MBar = CommandBars.Add(Name:="LES ACTIVITÉS",
Position:=msoBarFloating, _
Temporary:=True)

MBar.Visible = True

Set myControl1 = MBar.Controls.Add(Type:=msoControlButton)
With myControl1
.FaceId = 2644
.Caption = "TEXTE1"
'.OnAction = "MySub"
End With
Set myControl2 = MBar.Controls.Add(Type:=msoControlButton)
With myControl2
.FaceId = 6543
.Caption = "Calibration TEXTE2"
'.OnAction = "MySub"
End With

. ETC

End With
MBar.Visible = True

Merci à l' avance

4 réponses

Avatar
anonymousA
Bonjour,

je ne constate en rien ce phénomène. Il serait utile que tu publies ton
fichier pour que quelqu'un s'y penche.

A+

Bonjour Chèr(e)s Collègues
Je ne comprends pas pourquoi la Commandbar ne s’ ajuste pas automatiquement
Au nombre de control que j’y ajoute (9 au total) !

Je suis obligé de déclaré un dixième contrôle pour que le neuvième
apparaisse dans la Commandbar.
De plus à la place du dixième j’ai un icône fantôme

Dim MBar As CommandBar
Dim myControl1, myControl2, myControl3, myControl4, myControl5, _
myControl6, myControl7, myControl8, myControl9, myControl00 As Controls

Private Sub CommandButton2_Click()

On Error Resume Next
Application.CommandBars("LES ACTIVITÉS").Delete
Set MBar = CommandBars.Add(Name:="LES ACTIVITÉS",
Position:=msoBarFloating, _
Temporary:=True)

MBar.Visible = True

Set myControl1 = MBar.Controls.Add(Type:=msoControlButton)
With myControl1
.FaceId = 2644
.Caption = "TEXTE1"
'.OnAction = "MySub"
End With
Set myControl2 = MBar.Controls.Add(Type:=msoControlButton)
With myControl2
.FaceId = 6543
.Caption = "Calibration TEXTE2"
'.OnAction = "MySub"
End With

. ETC

End With
MBar.Visible = True

Merci à l' avance


Avatar
MichDenis
Adopte ce type de syntaxe, c'est plus court à écrire
et plus simple à lire :

C'est la propriété Style qui te permet d'avoir le texte
et l'image sur chacun des boutons .. ou ... les autres possibilités.

'---------------------------------
Private Sub CommandButton2_Click()
Dim MBar As CommandBar
Dim X As MsoButtonStyle
X = msoButtonIconAndCaption

On Error Resume Next
Application.CommandBars("LES ACTIVITÉS").Delete
Set MBar = CommandBars.Add(Name:="LES ACTIVITÉS", _
Position:=msoBarFloating, Temporary:=True)
With MBar
.Visible = True
With .Controls
With .Add
.FaceId = 2644
.Caption = "TEXTE1"
'.OnAction = "MySub"
.Style = X
End With
With .Add
.FaceId = 6543
.Caption = "Calibration TEXTE2"
'.OnAction = "MySub"
.Style = X
End With
End With
End With

End Sub
'---------------------------------



"Polus" a écrit dans le message de news:

Bonjour Chèr(e)s Collègues
Je ne comprends pas pourquoi la Commandbar ne s' ajuste pas automatiquement
Au nombre de control que j'y ajoute (9 au total) !

Je suis obligé de déclaré un dixième contrôle pour que le neuvième
apparaisse dans la Commandbar.
De plus à la place du dixième j'ai un icône fantôme

Dim MBar As CommandBar
Dim myControl1, myControl2, myControl3, myControl4, myControl5, _
myControl6, myControl7, myControl8, myControl9, myControl00 As Controls

Private Sub CommandButton2_Click()

On Error Resume Next
Application.CommandBars("LES ACTIVITÉS").Delete
Set MBar = CommandBars.Add(Name:="LES ACTIVITÉS",
Position:=msoBarFloating, _
Temporary:=True)

MBar.Visible = True

Set myControl1 = MBar.Controls.Add(Type:=msoControlButton)
With myControl1
.FaceId = 2644
.Caption = "TEXTE1"
'.OnAction = "MySub"
End With
Set myControl2 = MBar.Controls.Add(Type:=msoControlButton)
With myControl2
.FaceId = 6543
.Caption = "Calibration TEXTE2"
'.OnAction = "MySub"
End With

. ETC

End With
MBar.Visible = True

Merci à l' avance
Avatar
Polus
Cher MichDenis
Le problème est résolu en partie. Merci bcp
Je ne veux pas que le "Caption" apparaisse dans la barre à côté de l' icone.
Je veux que le "Caption" apparaisse comme une info-bulle quand le curseur
est au dessus du contrôle.

Merci à l' avance, car je ne pourrai l' essayer avant le 19 fév.


Adopte ce type de syntaxe, c'est plus court à écrire
et plus simple à lire :

C'est la propriété Style qui te permet d'avoir le texte
et l'image sur chacun des boutons .. ou ... les autres possibilités.

'---------------------------------
Private Sub CommandButton2_Click()
Dim MBar As CommandBar
Dim X As MsoButtonStyle
X = msoButtonIconAndCaption

On Error Resume Next
Application.CommandBars("LES ACTIVITÉS").Delete
Set MBar = CommandBars.Add(Name:="LES ACTIVITÉS", _
Position:=msoBarFloating, Temporary:=True)
With MBar
.Visible = True
With .Controls
With .Add
.FaceId = 2644
.Caption = "TEXTE1"
'.OnAction = "MySub"
.Style = X
End With
With .Add
.FaceId = 6543
.Caption = "Calibration TEXTE2"
'.OnAction = "MySub"
.Style = X
End With
End With
End With

End Sub
'---------------------------------



"Polus" a écrit dans le message de news:

Bonjour Chèr(e)s Collègues
Je ne comprends pas pourquoi la Commandbar ne s' ajuste pas automatiquement
Au nombre de control que j'y ajoute (9 au total) !

Je suis obligé de déclaré un dixième contrôle pour que le neuvième
apparaisse dans la Commandbar.
De plus à la place du dixième j'ai un icône fantôme

Dim MBar As CommandBar
Dim myControl1, myControl2, myControl3, myControl4, myControl5, _
myControl6, myControl7, myControl8, myControl9, myControl00 As Controls

Private Sub CommandButton2_Click()

On Error Resume Next
Application.CommandBars("LES ACTIVITÉS").Delete
Set MBar = CommandBars.Add(Name:="LES ACTIVITÉS",
Position:=msoBarFloating, _
Temporary:=True)

MBar.Visible = True

Set myControl1 = MBar.Controls.Add(Type:=msoControlButton)
With myControl1
.FaceId = 2644
.Caption = "TEXTE1"
'.OnAction = "MySub"
End With
Set myControl2 = MBar.Controls.Add(Type:=msoControlButton)
With myControl2
.FaceId = 6543
.Caption = "Calibration TEXTE2"
'.OnAction = "MySub"
End With

.. ETC

End With
MBar.Visible = True

Merci à l' avance





Avatar
MichDenis
| Je veux que le "Caption" apparaisse comme une info-bulle

Essaie ceci :
La propriété s'appelle : TooltipText

'---------------------------------
Private Sub CommandButton2_Click()
Dim MBar As CommandBar
Dim X As MsoButtonStyle
X = msoButtonIcon
On Error Resume Next
Application.CommandBars("LES ACTIVITÉS").Delete
Set MBar = CommandBars.Add(Name:="LES ACTIVITÉS", _
Position:=msoBarFloating, Temporary:=True)
With MBar
.Visible = True
With .Controls
With .Add
.FaceId = 2644
.TooltipText = "TEXTE1"
'.OnAction = "MySub"
.Style = X
End With
With .Add
.FaceId = 6543
.TooltipText = "Calibration TEXTE2"
'.OnAction = "MySub"
.Style = X
End With
End With
End With

End Sub
'---------------------------------