2017-02-13 2 views
0

Ich habe einen Listener in VBA geschrieben, in meinem Outlook, um eine Aktion auszuführen, wenn ich eine E-Mail erhalte.Outlook Ribbon: Schaltfläche wechseln in VBA

Ich möchte diese Funktion mithilfe einer Schaltfläche in meinem Outlook-Menüband aktivieren und deaktivieren können.

Um den aktuellen Status (ein/aus) zu wissen, möchte ich zwischen zwei Bildern auf der Schaltfläche (grün/rot) wechseln.

Kann jemand das Bild auf der Schaltfläche ändern, wenn es geklickt wurde?

Antwort

1

Ich weiß nicht, eine Möglichkeit, dies speziell zu tun, oder wenn es sogar möglich ist, aber Sie können eine sichtbare Eigenschaft einer Gruppe zur Laufzeit bearbeiten. Sie könnten also zwei Gruppen haben, mit zwei Bildern - eine rot, eine grün. In diesem Fall habe ich eine Gruppe Aktionen genannt, und ich werde zeigen, wie es sichtbar/unsichtbar machen:

XML - Legen Sie Ihre Taste als Kontrolle in hier

<group id="customGroup1" label="Actions" getVisible="CallbackGetVisible"> 

</group> 

Public/Modulebene Erklärung. Damit wird festgelegt, ob die Gruppe sichtbar ist oder nicht

Public bShowActions As Boolean 

CallbackGetVisible wird durch die XML, um die sichtbare Eigenschaft der Gruppe genannt. Die Sichtbarkeit wird durch bShowActions

Sub CallbackGetVisible(control As IRibbonControl, ByRef visible) 
On Error GoTo err_Handle 
Const strError As String = "'CallbackGetVisible'" 

    'Don't Re-Set The Value If It's Already The Same 
    If bShowActions = visible Then GoTo Cleanup 
    visible = bShowActions 
    GoTo Cleanup 

'Set Any Objects to Nothing, Exits Routine 
Cleanup: 
    Exit Sub 
'Throw Error 
err_Handle: 
    'Handle your error here 
    Resume Cleanup 
End Sub 

bestimmt Es ist nicht einfach, aber Sie sollten in der Lage zu erreichen, was Sie brauchen.

Verwandte Themen