2016-07-17 18 views
0

Ich habe eine Ribbon-Anwendung, die basierend auf Extensible Application Markup Language (XAML) in C++ entwickelt. Ich möchte das Symbol einer Schaltfläche ändern, wenn ich darauf klicke. Wie kann ich das Symbol ändern? Meine Anwendung ist nicht MFC, ich benutze Windows API.Ändern des Symbols einer Schaltfläche in Ribbbon

+0

Ich denke, das ist, was Sie suchen, die ** Dokumentation **: (https://msdn.microsoft.com/en-us/library/windows/desktop/dd940490(v=vs. 85) .aspx) Haftungsausschluss: Ich habe diese API nicht verwendet. Ich habe es einfach gegoogelt und mich umgesehen. –

+0

Uhm, wie ich geschrieben habe, habe ich das nicht benutzt. Aber als ich mich in der Docs-Hierarchie nach oben und dann nach unten klickte, landete ich bei (https://msdn.microsoft.com/en-us/library/windows/desktop/dd371356(v=vs.85).aspx)). Hier sehen Sie, dass es eine 'IUICollectionChangedEvent'-Schnittstelle für Änderungsereignisse und eine' IUICommandHandler'-Schnittstelle für Befehls- (Klick- und Tastenkürzel) -Ereignisse gibt. Siehe auch 'IUIEventingManager'. Ich schlage vor, dass Sie sich auf den Zugriff auf die Dokumentation vorbereiten. Nur, schreibe einige Aufgaben für dich auf und mach sie. –

Antwort

0

Sie können das Symbol einer Schaltfläche nicht ändern, wenn Sie klicken, zumindest nicht auf eine normale Weise. Die API unterstützt dies nicht, ich nehme an, aus dem Grund, dass das UI-Ribbon-UI-Konzept ein solches Verhalten nicht beabsichtigt (und Sie sollten vielleicht zweimal darüber nachdenken, bevor Sie ein "beabsichtigtes Verhalten" brechen).

Wie dem auch sei, könnten Sie so zwingen, ein Verhalten durch eine Ressourcendatei laden, die auf die gleiche XML-Definition bezieht sich (übrigens XML, XAML NICHT - wir sind nicht in der WPF-Welt hier), mit der einzigen Ausnahme, der Quellpfad des betreffenden Icons ist, der sich auf etwas anderes bezieht. Der entsprechende API-Aufruf lautet IUIFramework::LoadUI.

Verwandte Themen