FaceID in Word 2007

27/10/2008 - 09:43 von alexander.kerensky | Report spam
Hallo Gruppe,

ich bin noch ein ziemlicher Neuling in VBA aber ich habe jetzt die
leidvolle Aufgabe ein Addin nach 2007 zu portieren. Das Addin erzeugt
u.a. eine CommandBar in Word der verschiedene Funktionen zugewiesen
sind. Ich habe mit dem Tool "Ribbon Creator" eine neue
Multifunktionsleiste gebaut. Kopfschmerzen machen mir momentan aber
die Icons der einzelnen Buttons. Natürlich würde ich gern die alten
Icons benutzen um den Anwendern den Umstieg nicht noch weiter zu
erschweren. :-)
Diese scheint es in Word 2007 aber nicht mehr zu geben. Zumindest
finde ich sie nicht über den im Ribbon Creator eingebauten Browser.
Wenn das Addin jedoch im Kompatibilitàtsmodus ausgeführt wird,
erscheint die Leiste unter dem Addins Tab mit den dazugehörigen Icons.
Also müssen sie sich ja doch noch irgendwo verstecken. :-)
Hier mal etwas Beispielcode wie in dem Addin die Buttons erzeugt
werden:

Private Sub sSymbolArray(ByRef aSymbole() As Button)
ReDim aSymbole(1 To 19)
With aSymbole(1)
.Symbolleiste = gc_strCBR_TITEL
.BeginGroup = False
.Caption = "&Standardtext"
.KeyCategory = wdKeyCategoryMacro
.TastaturCode = BuildKeyCode(wdKeyAlt, wdKeyShift, wdKeyS)
.TooltipText = "Den markierten Absàtzen das Absatzlayout
""Standardtext"" zuweisen." & _
vbNewLine & "«" & KeyString(.TastaturCode) & "»"
.FaceId = 7
.Style = msoButtonIconAndCaption
.ToDo = "sZuweisenStandardtext"
End With
With aSymbole(2)
.Symbolleiste = gc_strCBR_TITEL
.BeginGroup = True
.Caption = "Überschrift &1"
.KeyCategory = wdKeyCategoryMacro
.TastaturCode = BuildKeyCode(wdKeyAlt, wdKey1)
.TooltipText = "Den markierten Absàtzen das Absatzlayout ""Überschrift
1"" zuweisen." & _
vbNewLine & "«" & KeyString(.TastaturCode) & "»"
.FaceId = 490
.Style = msoButtonIconAndCaption
.ToDo = "sZuweisenÜberschrift1"
End With

Im hab in der customUI.xml Datei nachgeschaut wie die Buttons gebaut
werden. Dort werden die Icons über "imageMso" und den Namen des Icons
(z.B. BusinessFormWizard) angegeben. Ich habe jedoch nur die FaceID
und kenne den dazugehörigen Namen nicht. Kann mir jemand helfen?

Danke im Voraus

Gruß Alex
 

Lesen sie die antworten

#1 Cindy M.
28/10/2008 - 15:21 | Warnen spam
ich bin noch ein ziemlicher Neuling in VBA aber ich habe jetzt die
leidvolle Aufgabe ein Addin nach 2007 zu portieren. Das Addin erzeugt
u.a. eine CommandBar in Word der verschiedene Funktionen zugewiesen
sind. Ich habe mit dem Tool "Ribbon Creator" eine neue
Multifunktionsleiste gebaut. Kopfschmerzen machen mir momentan aber
die Icons der einzelnen Buttons. Natürlich würde ich gern die alten
Icons benutzen um den Anwendern den Umstieg nicht noch weiter zu
erschweren. :-)



Mmm, leider sind diese Icons nicht mehr über "FaceID" erreichbar. Du
musst sie unter den Befehlen in der Ribbon suchen und ihr idMso-Wert
notieren, sofern wie der Ribbon zur Verfügung gestellt wurden. Vergiss
auch nicht diejenige, die für benutzerdefinierte Steuerflàchen
bereitstehen. Oder Du suchst sie in einer der Excel-Arbeitsmappen, die
alle internen Icons auflisten.

Falls Du sie nicht finden kannst, bleibt nur, das Icon zu kopieren, in
ein Grafikprogramm einzufügen, als Grafikdatei (*.png) speichern und
das Bildchen dynamisch laden.

Cindy Meister
Co-Autor von »Microsoft Word-Programmierung Das Handbuch« (MS Press)
http://www.word.mvps.org
http://homepage.swissonline.ch/cindymeister

Rückfragen & Antworten nur in der Newsgroup, bitte!

Ähnliche fragen