Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  SolidWorks
  Menü hinzu fügen

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für SOLIDWORKS
  
Hannover Messe
Autor Thema:  Menü hinzu fügen (1887 mal gelesen)
_InvasoR_
Mitglied
student


Sehen Sie sich das Profil von _InvasoR_ an!   Senden Sie eine Private Message an _InvasoR_  Schreiben Sie einen Gästebucheintrag für _InvasoR_

Beiträge: 55
Registriert: 17.03.2005

erstellt am: 14. Jul. 2005 10:50    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


AddMenue.txt

 
Hallöchen liebe Community !

Hätte mal wieder ein kleines Anliegen.

Ich möchte in SolidWorks über meine Anwendung Menüs adden. Hab mir das ganze etwas einfacher vorgestellt als es ist   

In der Api-Help steht, wenn ich ein menü über Frame.AddMenue() adden möchte müss die Application als dll implementiert sein.

Ich habe Folgendes probiert...

Habe meinem Projekt ein neues Klassenbibliothek-Projekt hinzu gefügt.
Die Kompileoption steht also auf dll.
habe dann in meinem Hauptprojekt den namespace der dll mit angegeben und habe einen Verweis auf die dll angelegt.

Leider funktioniert es nicht.

Die Frame.AddMenue()-Methode liefert mir aber True. Also ist da schonmal nichts schief gelaufen.

Weiss Jemand was ich falsch mache ?

Oder muss mein komplettes Projekt als dll laufen ? 


Grüsse Robin


PS. Codestück im Anhang


[Diese Nachricht wurde von _InvasoR_ am 14. Jul. 2005 editiert.]

[Diese Nachricht wurde von _InvasoR_ am 14. Jul. 2005 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Thomas Rolf
Mitglied
Dipl.-Ing. / CAD-Admin


Sehen Sie sich das Profil von Thomas Rolf an!   Senden Sie eine Private Message an Thomas Rolf  Schreiben Sie einen Gästebucheintrag für Thomas Rolf

Beiträge: 189
Registriert: 02.07.2001

SWX 2015 SP4.0

erstellt am: 14. Jul. 2005 13:09    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für _InvasoR_ 10 Unities + Antwort hilfreich

Hi Robin;

Habe mal den Anfang meines Menü's angehängt.

Muß meines Erachtens auf jeden Fall ein Klassenmodul sein.


Vielleicht hifts

Gruß
Thomas

Code:

Option Explicit
Implements SWPublished.SwAddin


Public swApp      As SldWorks.SldWorks
Public swCookie    As Long
Public swToolbarID As Long


Private Function SwAddin_ConnectToSW(ByVal ThisSW As Object, ByVal Cookie As Long) As Boolean


Set swApp = ThisSW
swCookie = Cookie


swApp.SetAddinCallbackInfo App.hInstance, Me, swCookie

'----------------------------------------------------------------------------------------------------------
'PART-Menü
swApp.AddMenu swDocPART, "KME", 5
'Menu Dichte/Masse erstellen
'    swApp.AddMenuItem3 swDocPART, swCookie, "Dichte/Masse...@KME", -1, "MenuPunkt_Dichte_Masse", "", "", ""
'Menu Massenmittelpunkt erstellen
    swApp.AddMenuItem3 swDocPART, swCookie, "Massenmittelpunkt setzen@KME", -1, "MenuPunkt_Schwerpunkt", "", "", ""
'Menu Toleranz erstellen
    swApp.AddMenuItem3 swDocPART, swCookie, "Toleranz...@KME", -1, "MenuPunkt_Toleranz", "", "", ""
'Menu ---------- erstellen
    swApp.AddMenuItem3 swDocPART, swCookie, "@KME", -1, "MenuPunkt_Info", "", "", ""
'Menu Gewindedaten erstellen
    swApp.AddMenuItem3 swDocPART, swCookie, "Gewindedaten anzeigen@KME", -1, "MenuPunkt_Gewindedaten", "", "", ""
'Menu APA's erstellen
    swApp.AddMenuItem3 swDocPART, swCookie, "APA's@KME", -1, "", "", "", ""
    'UnterMenu APA's - APA-SE-100 erstellen
        swApp.AddMenuItem3 swDocPART, swCookie, "APA-SE-100 (Z.-Nr.)...@APA's@KME", -1, "MenuPunkt_APA_SE_100", "", "", ""
    'UnterMenu APA's - APA-SE-102 erstellen
        swApp.AddMenuItem3 swDocPART, swCookie, "APA-SE-102 (3D)...@APA's@KME", -1, "MenuPunkt_APA_SE_102", "", "", ""
    'separator
        swApp.AddMenuItem3 swDocPART, swCookie, "@APA's@KME", -1, "MenuPunkt_Info", "", "", ""
    'UnterMenu APA's - APA-SE-607 erstellen
        swApp.AddMenuItem3 swDocPART, swCookie, "APA-SE-607 (Koki-Rohrtol.'s)...@APA's@KME", -1, "MenuPunkt_APA_SE_607", "", "", ""
'Menu Info erstellen
    swApp.AddMenuItem3 swDocPART, swCookie, "Info...@KME", -1, "MenuPunkt_Info", "", "", ""
'----------------------------------------------------------------------------------------------------------
'----------------------------------------------------------------------------------------------------------
'assembly-Menü
swApp.AddMenu swDocASSEMBLY, "KME", 5
'Menu Dichte/Masse erstellen
'    swApp.AddMenuItem3 swDocASSEMBLY, swCookie, "Dichte/Masse...@KME", -1, "MenuPunkt_Dichte_Masse", "", "", ""
'Menu Massenmittelpunkt erstellen
    swApp.AddMenuItem3 swDocASSEMBLY, swCookie, "Massenmittelpunkt setzen@KME", -1, "MenuPunkt_Schwerpunkt", "", "", ""
'Menu Toleranz erstellen
    swApp.AddMenuItem3 swDocASSEMBLY, swCookie, "Toleranz...@KME", -1, "MenuPunkt_Toleranz", "", "", ""
'Menu ---------- erstellen
    swApp.AddMenuItem3 swDocASSEMBLY, swCookie, "@KME", -1, "MenuPunkt_Info", "", "", ""
'Menu Gewindedaten erstellen
    swApp.AddMenuItem3 swDocASSEMBLY, swCookie, "Gewindedaten anzeigen@KME", -1, "MenuPunkt_Gewindedaten", "", "", ""
'Menu APA's erstellen
    swApp.AddMenuItem3 swDocASSEMBLY, swCookie, "APA's@KME", -1, "", "", "", ""
    'UnterMenu APA's - APA-SE-100 erstellen
        swApp.AddMenuItem3 swDocASSEMBLY, swCookie, "APA-SE-100 (Z.-Nr.)...@APA's@KME", -1, "MenuPunkt_APA_SE_100", "", "", ""
    'UnterMenu APA's - APA-SE-102 erstellen
        swApp.AddMenuItem3 swDocASSEMBLY, swCookie, "APA-SE-102 (3D)...@APA's@KME", -1, "MenuPunkt_APA_SE_102", "", "", ""
    'separator
        swApp.AddMenuItem3 swDocASSEMBLY, swCookie, "@APA's@KME", -1, "MenuPunkt_Info", "", "", ""
    'UnterMenu APA's - APA-SE-607 erstellen
        swApp.AddMenuItem3 swDocASSEMBLY, swCookie, "APA-SE-607 (Koki-Rohrtol.'s)...@APA's@KME", -1, "MenuPunkt_APA_SE_607", "", "", ""
       
'Menu Info erstellen
    swApp.AddMenuItem3 swDocASSEMBLY, swCookie, "Info...@KME", -1, "MenuPunkt_Info", "", "", ""
'----------------------------------------------------------------------------------------------------------
'----------------------------------------------------------------------------------------------------------
'drawing-Menü
swApp.AddMenu swDocDRAWING, "KME", 6
'Menu Toleranz erstellen
    swApp.AddMenuItem3 swDocDRAWING, swCookie, "Toleranz...@KME", -1, "MenuPunkt_Toleranz", "", "", ""
'Menu ---------- erstellen
    swApp.AddMenuItem3 swDocDRAWING, swCookie, "@KME", -1, "MenuPunkt_Info", "", "", ""
'Menu Gewindedaten erstellen
    swApp.AddMenuItem3 swDocDRAWING, swCookie, "Gewindedaten anzeigen@KME", -1, "MenuPunkt_Gewindedaten", "", "", ""
'separator
        swApp.AddMenuItem3 swDocDRAWING, swCookie, "@KME", -1, "MenuPunkt_Info", "", "", ""
'Menu PRO.FILE erstellen
    swApp.AddMenuItem3 swDocDRAWING, swCookie, "PRO.FILE@KME", -1, "", "", "", ""
    'UnterMenu PRO.FILE - Blattvorlage aktualisieren erstellen
        swApp.AddMenuItem3 swDocDRAWING, swCookie, "Blattvorlage aktualisieren@PRO.FILE@KME", -1, "MenuPunkt_Blattvorlage_aktualisieren", "", "", ""
'separator
        swApp.AddMenuItem3 swDocDRAWING, swCookie, "@KME", -1, "MenuPunkt_Info", "", "", ""
'Menu APA's erstellen
    swApp.AddMenuItem3 swDocDRAWING, swCookie, "APA's@KME", -1, "", "", "", ""
    'UnterMenu APA's - APA-SE-100 erstellen
        swApp.AddMenuItem3 swDocDRAWING, swCookie, "APA-SE-100 (Z.-Nr.)...@APA's@KME", -1, "MenuPunkt_APA_SE_100", "", "", ""
    'UnterMenu APA's - APA-SE-102 erstellen
        swApp.AddMenuItem3 swDocDRAWING, swCookie, "APA-SE-102 (3D)...@APA's@KME", -1, "MenuPunkt_APA_SE_102", "", "", ""
    'separator
        swApp.AddMenuItem3 swDocDRAWING, swCookie, "@APA's@KME", -1, "MenuPunkt_Info", "", "", ""
    'UnterMenu APA's - APA-SE-607 erstellen
        swApp.AddMenuItem3 swDocDRAWING, swCookie, "APA-SE-607 (Koki-Rohrtol.'s)...@APA's@KME", -1, "MenuPunkt_APA_SE_607", "", "", ""
       
'Menu Info erstellen
    swApp.AddMenuItem3 swDocDRAWING, swCookie, "Info...@KME", -1, "MenuPunkt_Info", "", "", ""
'----------------------------------------------------------------------------------------------------------
'----------------------------------------------------------------------------------------------------------
'none-Menü
swApp.AddMenu swDocNONE, "KME", 4
'Menu Gewindedaten erstellen
    swApp.AddMenuItem3 swDocNONE, swCookie, "Gewindedaten anzeigen@KME", -1, "MenuPunkt_Gewindedaten", "", "", ""
'Menu APA's erstellen
    swApp.AddMenuItem3 swDocNONE, swCookie, "APA's@KME", -1, "", "", "", ""
    'UnterMenu APA's - APA-SE-100 erstellen
        swApp.AddMenuItem3 swDocNONE, swCookie, "APA-SE-100 (Z.-Nr.)...@APA's@KME", -1, "MenuPunkt_APA_SE_100", "", "", ""
    'UnterMenu APA's - APA-SE-102 erstellen
        swApp.AddMenuItem3 swDocNONE, swCookie, "APA-SE-102 (3D)...@APA's@KME", -1, "MenuPunkt_APA_SE_102", "", "", ""
    'separator
        swApp.AddMenuItem3 swDocNONE, swCookie, "@APA's@KME", -1, "MenuPunkt_Info", "", "", ""
    'UnterMenu APA's - APA-SE-607 erstellen
        swApp.AddMenuItem3 swDocNONE, swCookie, "APA-SE-607 (Koki-Rohrtol.'s)...@APA's@KME", -1, "MenuPunkt_APA_SE_607", "", "", ""
       
'Menu Info erstellen
    swApp.AddMenuItem3 swDocNONE, swCookie, "Info...@KME", -1, "MenuPunkt_Info", "", "", ""
'----------------------------------------------------------------------------------------------------------
'----------------------------------------------------------------------------------------------------------
'sdm-Menü
swApp.AddMenu swDocSDM, "KME", 4
'Menu Gewindedaten erstellen
    swApp.AddMenuItem3 swDocSDM, swCookie, "Gewindedaten anzeigen@KME", -1, "MenuPunkt_Gewindedaten", "", "", ""
'Menu APA's erstellen
    swApp.AddMenuItem3 swDocSDM, swCookie, "APA's@KME", -1, "", "", "", ""
    'UnterMenu APA's - APA-SE-100 erstellen
        swApp.AddMenuItem3 swDocSDM, swCookie, "APA-SE-100 (Z.-Nr.)...@APA's@KME", -1, "MenuPunkt_APA_SE_100", "", "", ""
    'separator
        swApp.AddMenuItem3 swDocSDM, swCookie, "@APA's@KME", -1, "MenuPunkt_Info", "", "", "        "
    'UnterMenu APA's - APA-SE-102 erstellen
        swApp.AddMenuItem3 swDocSDM, swCookie, "APA-SE-102 (3D)...@APA's@KME", -1, "MenuPunkt_APA_SE_102", "", "", ""
    'separator
        swApp.AddMenuItem3 swDocSDM, swCookie, "@APA's@KME", -1, "MenuPunkt_Info", "", "", ""
    'UnterMenu APA's - APA-SE-607 erstellen
        swApp.AddMenuItem3 swDocSDM, swCookie, "APA-SE-607 (Koki-Rohrtol.'s)...@APA's@KME", -1, "MenuPunkt_APA_SE_607", "", "", ""
       
'Menu Info erstellen
    swApp.AddMenuItem3 swDocSDM, swCookie, "Info...@KME", -1, "MenuPunkt_Info", "", "", ""
'----------------------------------------------------------------------------------------------------------


'--------------------
'Toolbar
    swToolbarID = swApp.AddToolbar4(swCookie, "KME", _
                                    "V:\SolidWorks\KME-Menue\SolidWorks-KME-Menü2005\KMEMenue\Bilder\KME_Toolbar_256_klein.bmp", _
                                    "", -1, _
                                    swDocTemplateTypeNONE + swDocTemplateTypePART + swDocTemplateTypeASSEMBLY + swDocTemplateTypeDRAWING)
                                   
  ' swApp.AddToolbarCommand2 swCookie, swToolbarID, 0, "MenuPunkt_Dichte_Masse", "1", "Dichte/Masse", "Setzt die Dichte von Teilen"
    swApp.AddToolbarCommand2 swCookie, swToolbarID, 0, "MenuPunkt_Schwerpunkt", "1", "Massenmittelpunkt setzen", "Zeichnet den Massenmittelpunkt ins Modell"
    swApp.AddToolbarCommand2 swCookie, swToolbarID, 1, "MenuPunkt_Toleranz", "1", "Toleranz auf Mittenmaß", "Setzt Maße auf die Mitte der Toleranzangabe"
    swApp.AddToolbarCommand2 swCookie, swToolbarID, 2, "MenuPunkt_Gewindedaten", "1", "Gewindedaten", "Zeigt Gewindedaten an (Excel)"
    swApp.AddToolbarCommand2 swCookie, swToolbarID, 3, "MenuPunkt_Blattvorlage_aktualisieren", "1", "Blattvorlage aktualisieren", "Aktualisiert die Blattvorlage für PROFILE"
    swApp.AddToolbarCommand2 swCookie, swToolbarID, 4, "MenuPunkt_APAs", "1", "APA's anzeigen", "Zeigt alle APA's von SEe"
'To create a separator, all of the method's string parameters
'(ButtonCallback, ButtonEnableMethod, ToolTip, and HintString) must be blank strings.
'A bitmap button must still be defined in the add-in's resources, but it will not be used.
    swApp.AddToolbarCommand2 swCookie, swToolbarID, 5, "", "", "", ""
    swApp.AddToolbarCommand2 swCookie, swToolbarID, 6, "MenuPunkt_Info", "1", "Info anzeigen", "Gibt Info's zum KME-Menue aus"
   
   
   
    swApp.ShowToolbar2 swCookie, swToolbarID
   
   

End Function

Private Function SwAddin_DisconnectFromSW() As Boolean
    swApp.RemoveMenu swDocPART, "KME", ""
    swApp.RemoveMenu swDocASSEMBLY, "KME", ""
    swApp.RemoveMenu swDocDRAWING, "KME", ""
    swApp.RemoveMenu swDocNONE, "KME", ""
    swApp.RemoveMenu swDocSDM, "KME", ""
    swApp.RemoveToolbar2 swCookie, swToolbarID
   
'  bRet = ISldWorks.RemoveToolbar2(iCookie, iToolbarID)
End Function


Public Sub MenuPunkt_Dichte_Masse()
    Call Dichte_Masse
End Sub
Public Sub MenuPunkt_Toleranz()
    Call Toleranz
End Sub


Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

_InvasoR_
Mitglied
student


Sehen Sie sich das Profil von _InvasoR_ an!   Senden Sie eine Private Message an _InvasoR_  Schreiben Sie einen Gästebucheintrag für _InvasoR_

Beiträge: 55
Registriert: 17.03.2005

erstellt am: 14. Jul. 2005 13:46    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Vielen Dank Thomas !
Es hilft mir schon n bischen weiter. nut leider programmier ich in c#. 
Es scheitert schon bei einer der ersten Zeilen.
Code:
swApp.SetAddinCallbackInfo App.hInstance, Me, swCookie

Wo kommen die Variablen App und Me her ?

Gruss Robin

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Thomas Rolf
Mitglied
Dipl.-Ing. / CAD-Admin


Sehen Sie sich das Profil von Thomas Rolf an!   Senden Sie eine Private Message an Thomas Rolf  Schreiben Sie einen Gästebucheintrag für Thomas Rolf

Beiträge: 189
Registriert: 02.07.2001

SWX 2015 SP4.0

erstellt am: 14. Jul. 2005 16:09    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für _InvasoR_ 10 Unities + Antwort hilfreich

Hi Rob;


In VB ist "app" das laufende Objekt; die laufende Applikation.
Die hInstance-Eigenschaft gibt die Zugriffsnummer
der Visual Basic-Instanz zurück.

Das Schlüsselwort Me verhält sich wie eine implizit deklarierte Variable. Es steht allen Prozeduren in einem Klassenmodul automatisch zur Verfügung. Wenn eine Klasse mehrere Instanzen haben kann, stellt Me eine Möglichkeit dar, um sich auf diejenige Instanz der Klasse zu beziehen, in der Code ausgeführt wird. Die Verwendung von Me ist insbesondere dann hilfreich, wenn Du Informationen zur momentan ausgeführten Instanz einer Klasse an eine Prozedur in einem anderen Modul z.B. SolidWorks übergeben möchtest.

Wie das in C funktioniert, weiß ich allerdings nicht.

Gruß
Thomas

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2024 CAD.de | Impressum | Datenschutz