| | | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Werkzeugleiste mit Icons erstellen (1726 mal gelesen)
|
Andreas Widmann Mitglied ATHENA Support/Training
Beiträge: 218 Registriert: 24.08.2005 Windows 10 Autocad 2015 - 2018 Athena 2015 - 2017 Aufsatz
|
erstellt am: 24. Aug. 2005 19:37 <-- editieren / zitieren --> Unities abgeben:
Hallo Leute ich habe in Autocad-VBA ein Macro geschrieben das beim ausführen eine neue Werkzeugleiste und ein paar Icons erzeugt. Das funktioniert auch wunderbar und ich habe jetzt eine Leiste mit mehreren Icons die auch funktionieren. Mein Problem, was mich schon zur Weißglut bringt, ist dass wenn ich Autocad beende und wieder starte ist die Leiste leer oder weg und wenn ich Icons von der Leiste vorher in andere ziehe, fehlen die verschobenen ebenfalls nach dem Neustart,grr! Bitte helft mir! der Code lautet folgendermaßen:
Code:
Sub awiupdate()
- 'Variablen und Objekte definieren
Dim currMenuGroup As AcadMenuGroup Dim newToolBar As AcadToolbar, newToolBarButton As AcadToolbarItem Dim Macro As String Dim BitmapName As String, IconName As String, IconHelp As String - [b)'Fehlermeldungen ausschalten falls die Leiste nicht vorhanden ist[/b]
On Error Resume Next - 'Werkzeugleiste löschen wenn sie vorhanden ist
AutoCAD.MenuGroups("ATH-USER").Toolbars("AWI-Zusatztools").Delete - 'Menügruppe definieren in die die Leiste erstellt werden soll
Set currMenuGroup = ThisDrawing.Application.MenuGroups.Item("ATH-USER") - 'Neue Werkzeugleiste mit dem Namen AWI-Zusatztools erstellen
Set newToolBar = currMenuGroup.Toolbars.Add("AWI-Zusatztools") - 'Variablen zur Iconerzeugung angeben
IconName = "Alles ein" IconHelp = "" Macro = Chr(3) & Chr(3) & "-layer ei * " & Chr(3) & "M ATH_ORUK ATH_LTAU *" & Chr(10) - 'Iconbild angeben
BitmapName = "C:\Programme\ATHENA 2004\awi-Allesein.BMP" - 'Icon am ende der Werkzeugleiste erstellen
Set newToolBarButton = newToolBar.AddToolbarButton(newToolBar.Count + 1, IconName, IconHelp, Macro, False) newToolBarButton.SetBitmaps BitmapName, BitmapName - 'Nächstes Icon definieren
IconName = "Ansichtsfenster entsperren" IconHelp = "" Macro = Chr(3) & Chr(3) & "-vbaausf lockaus " BitmapName = "C:\Programme\ATHENA 2004\awi-lockaus.BMP" - 'Icon erstellen usw...
Set newToolBarButton = newToolBar.AddToolbarButton(newToolBar.Count + 1, IconName, IconHelp, Macro, False) newToolBarButton.SetBitmaps BitmapName, BitmapNameOn Error GoTo 0 End Sub
Mfg Andreas A.Widmann84@gmx.de
[Diese Nachricht wurde von Andreas Widmann am 05. Sep. 2005 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
tunnelbauer Ehrenmitglied V.I.P. h.c. Bauingenieur
Beiträge: 7085 Registriert: 13.01.2004 ich hab eh keine Probleme damit...
|
erstellt am: 24. Aug. 2005 19:46 <-- editieren / zitieren --> Unities abgeben: Nur für Andreas Widmann
Hi Andreas, herzlich willkommen auf cad.de/augce.de ! Zu deiner Frage: Du verwendest nur MenuGroups udgl. - diese gelten allerdings nur für die Session. Du müsstest das MenuGroup-Objekt auch in eine Datei schreiben Zitat:
MenuBar property Gets the MenuBar object for the session. MenuFile property Specifies the location of the AutoCAD customization file for the session. MenuFileName property Gets the customization file name where the menu group is located. MenuGroups property Gets the MenuGroups collection for the session. Menus property Gets the PopupMenus collection.
Also du müsstest mit MenuFileName auch noch arbeiten und deine Collection in eine Datei speichern; solange du nur im RAM arbeitest ist es klar, dass diese nach einem Neustart fehlen. ------------------ Grüsse Thomas [Diese Nachricht wurde von tunnelbauer am 24. Aug. 2005 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Andreas Widmann Mitglied ATHENA Support/Training
Beiträge: 218 Registriert: 24.08.2005
|
erstellt am: 25. Aug. 2005 12:33 <-- editieren / zitieren --> Unities abgeben:
Danke, tunnelbauer für die schnelle antwort! Ok, ich habe das mal so versucht und diesen Code ans Ende gesetzt:
Code:
AutoCAD.MenuGroups("ATH-USER").Save acMenuFileCompiled
Wenn ich jetzt ACAD neu starte ist die leiste noch da und auch deren Icons. Wenn ich aber jetzt eines der Icons von Hand in eine andere Werkzeugleiste verschiebe oder kopiere habe ich wieder den gleichen Salat alle Icons die mit dem Macro erstellt waren sind weg, ich verzweifel langsam.Zu Menufilename: Ich verwende ja eine vorhandene Menügruppe in der ich dann meine Leiste erzeuge deshalb steht der Menufilename doch schon fest,oder? Hast du mir vielleicht einen Codeschnipsel von nem Beispiel wo sowas ähnliches gemacht wird? mfg Andreas Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Andreas Widmann Mitglied ATHENA Support/Training
Beiträge: 218 Registriert: 24.08.2005 Windows 10 Autocad 2015 - 2018 Athena 2015 - 2017 Aufsatz
|
erstellt am: 05. Sep. 2005 18:32 <-- editieren / zitieren --> Unities abgeben:
Hallo! Keiner mehr ne Idee? Ich bräuchte dringend Hilfe zu dem Thema ich habs immer noch nicht hingekriegt sobald ich meine Leisten verändere sind sie danach weg ------------------ Mfg Andreas Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|