Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  Inventor .NET
  Untermenü in Contextmenü

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 Autodesk Produkte
Autor Thema:  Untermenü in Contextmenü (1671 mal gelesen)
bwr
Mitglied
Konstrukteur


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

Beiträge: 129
Registriert: 21.02.2007

erstellt am: 29. Aug. 2013 15:32    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

Hallo,

ich versuche verzweifelt ein Untermenü im Contextmenü zu erstellen. Ich meine das mit dem schwarzen Pfeil dahinter so wie bei "Auswahl" oder "Stücklistenstruktur". Bis jetzt habe ich es ohne große Schwierigkeiten geschafft einen Button in das Kontextmenü einzufügen, aber bei dem Untermenü komme ich einfach nicht weiter.

Ich hab's schon mit 'CommandControl.ChildControls' versucht, aber in der Hilfe steht, daß ChildControls nich beim Typ kButtonContol verfügbar sind. Wenn man sich aber von sämtlichen Controls (auch die mit dem schwarzen Pfeil) die Typen anschaut sind diese als kButtonContol definiert.

Daß es irgenwie trotzdem gehen muß ist deutlich, bloß wie?

Folgender Code liefert das Ergebnis darunter:

Code:

    'Iterate each controls in linear menu
    For Each ctrl As CommandControl In LinearMenu
        Debug.Print("Control: " + ctrl.DisplayName + " [" + ctrl.InternalName + "]  " + ctrl.ControlType.ToString)
    Next

ERGEBNIS:

Control:  &wiederholen [AppRepeatCmd]  kButtonControl
Control: ---- [----]  kButtonControl
Control: ---- [----]  kButtonControl
Control: Kopieren [AppCopyCmd]  kButtonControl
Control: ---- [----]  kButtonControl
Control: Zeichnung öffnen [CMxOpenDrawingCmd]  kButtonControl
Control: ---- [----]  kButtonControl
Control: &Löschen [AppDeleteCmd]  kButtonControl
Control: ---- [----]  kButtonControl
Control: Zu neuem Ordner hinzufü&gen [AppAddToFolderCtxCmd]  kButtonControl
Control: ---- [----]  kButtonControl
Control: Auswahl []  kButtonControl
Control: Isolieren [AssemblyIsolateCmd]  kButtonControl
Control: Isolieren rückgängig [AssemblyIsolateUndoCmd]  kButtonControl
Control: &Ersetzen [CMxSubstituteCmd]  kButtonControl
Control: ---- [----]  kButtonControl
Control: Darstellung... [AssemblyRepresentationsCmd]  kButtonControl
Control: Komponente []  kButtonControl
Control: ---- [----]  kButtonControl
Control: &Messen []  kButtonControl
Control: ---- [----]  kButtonControl
Control: Noti&z erstellen [NotebookCreateNoteCtxCmd]  kButtonControl
Control: ---- [----]  kButtonControl
Control: Stücklistenstruktur []  kButtonControl
Control: &Sichtbarkeit [AssemblyVisibilityCtxCmd]  kButtonControl
Control: Sichtbarkeit iMate-Zeic&hen [AssemblySetiMateVisibilityCtxCmd]  kButtonControl
Control: Fi&xiert [AssemblyGroundCtxCmd]  kButtonControl
Control: Ada&ptiv [AssemblyAdaptiveCtxCmd]  kButtonControl
Control: &Aktiviert [AssemblyToggleEnabledStateCtxCmd]  kButtonControl
Control: &Kontaktsatz [AssemblyContactSetCtxCmd]  kButtonControl
Control: ---- [----]  kButtonControl
Control: Unterdrücken [AssemblyCompSuppressionCtxCmd]  kButtonControl
Control: ---- [----]  kButtonControl
Control: &In Browser suchen [AppFindInBrowserCtxCmd]  kButtonControl
Control: ---- [----]  kButtonControl
Control: &iProperties... [AssemblyPropertiesCmd]  kButtonControl
Control: ---- [----]  kButtonControl
Control: &Verfahren... [AppHowToCmd]  kButtonControl


Hoffentlich kann mir jemand helfen.

Gruß
Andi
 

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

rkauskh
Moderator
Dipl.-Ing. (FH) Versorgungstechnik




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

Beiträge: 2166
Registriert: 15.11.2006

Windows 10 x64, AIP 2022

erstellt am: 29. Aug. 2013 21:05    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 bwr 10 Unities + Antwort hilfreich

Hallo

Normalerweise erstellt man eine funktionslose ButtonDefinition, die die Beschriftung für die erste Ebene erzeugt und sagen wir mal 2 ButtonDefinitions für die Befehle der zweiten Ebene. Das Ganze fügt man mit der AddSplitButton-Methode ins Kontextmenü ein.

Zitat:
CommandControls.AddSplitButton( DisplayedControl As ButtonDefinition, ButtonDefinitions As ObjectCollection, [UseLargeIcon] As Boolean, [ShowText] As Boolean, [TargetControlInternalName] As String, [InsertBeforeTargetControl] As Boolean ) As CommandControl

------------------
MfG
Ralf

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

bwr
Mitglied
Konstrukteur


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

Beiträge: 129
Registriert: 21.02.2007

erstellt am: 30. Aug. 2013 08:59    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

Hallo

leider komme ich mit AddSplitButton noch nicht ans Ziel. Auch mit allen anderen Buttontypen bekomme ich nur eine Fehlermeldung.

Hier sind Auszüge von meinem Code:

Code:

            m_copyCodiceButtonDef = m_inventorApplication.CommandManager.ControlDefinitions.AddButtonDefinition( _
                "Codice -> Clipbpard", _
                "CopyCodiceIntName", _
                CommandTypesEnum.kEditMaskCmdType, _
                m_ThisGuidString, _
                "Copy the codice to the clipboard", _
                "Copy the codice to the clipboard")

            AddHandler m_copyCodiceButtonDef.OnExecute, AddressOf CopyCodiceCommand

            m_checkSelectButtonDef = m_inventorApplication.CommandManager.ControlDefinitions.AddButtonDefinition( _
                "Check Selection", _
                "CheckSelectionIntName", _
                CommandTypesEnum.kEditMaskCmdType, _
                m_ThisGuidString, _
                "Provide info of the selection", _
                "Provide info of the selection")

            AddHandler m_checkSelectButtonDef.OnExecute, AddressOf CheckSelectionCommand

            m_splitButtonDef = m_inventorApplication.CommandManager.ControlDefinitions.AddButtonDefinition( _
                "SplitButton", _
                "SplitButtonIntName", _
                CommandTypesEnum.kEditMaskCmdType, _
                m_ThisGuidString, _
                String.Empty, _
                String.Empty)


Private Sub m_UserInputEvents_OnLinearMarkingMenu(ByVal SelectedEntities As Inventor.ObjectsEnumerator, _
                                                          ByVal SelectionDevice As Inventor.SelectionDeviceEnum, _
                                                          ByVal LinearMenu As Inventor.CommandControls, _
                                                          ByVal AdditionalInfo As Inventor.NameValueMap) _
                                                          Handles m_UserInputEvents.OnLinearMarkingMenu

        Dim selectedEntity As Object = SelectedEntities.Item(1)
        If TypeOf selectedEntity Is Inventor.ComponentOccurrence OrElse _
            TypeOf selectedEntity Is WeldmentComponentDefinition OrElse _
            TypeOf selectedEntity Is AssemblyComponentDefinition OrElse _
            TypeOf selectedEntity Is PartComponentDefinition Then

            Dim buttonDefinitions As ObjectCollection
            buttonDefinitions = m_inventorApplication.TransientObjects.CreateObjectCollection
            buttonDefinitions.Add(m_copyCodiceButtonDef)
            buttonDefinitions.Add(m_checkSelectButtonDef)

            LinearMenu.AddSplitButton(m_splitButtonDef, buttonDefinitions, False, True)

        End If

End Sub


 

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

bwr
Mitglied
Konstrukteur


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

Beiträge: 129
Registriert: 21.02.2007

Win10 64-bit NVIDIA T500
Inventor 2022
Catia V5-6R2020

erstellt am: 02. Sep. 2013 14:12    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

Ich habe heute noch ein bißchen rumprobiert. Leider ohne Erfolg.

Ins Kontextmenü bekomme ich immer nur einen normalen Button mit CommandControls.AddButton(...)

Alle anderen möglichen Buttons wie SplitButton, Popup oder TogglePopup bekommen ich mit meinen Buttondefinitionen ohne Probleme in ein Ribbonpanel aber eben nicht ins Kontextmenü. Keine Ahnung was da nicht paßt.

Vielleicht fällt euch noch was ein, was ich probieren könnte. Im Netz kann ich auch leider keine brauchbaren mehr Informationen finden.

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)2023 CAD.de | Impressum | Datenschutz