Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  NX Programmierung
  eventhandler

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 NX
Autor Thema:  eventhandler (2582 mal gelesen)
RobertM
Mitglied



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

Beiträge: 223
Registriert: 03.12.2008

noch NX 8.5 + TC Teamcenter 9.1.2.2 64-Bit

erstellt am: 18. Okt. 2011 07:34    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 möchte einen Eventhandler erstellen, der aufgrufen wird, wenn ich über Fenster das prt wechsle.

Über die Hilfe bin ich auf hello_goodbye.vb und die MenuBarManager Class gekommen.

Ich habe hello_goodbye.dll in das Verzeichnis  \ugsshare\nx6\win32\ugii\startup kopiert. Die wird bei Start von NX auch geladen aber nicht ausgeführt.

In der Hilfe steht:
After compiling and linking this example, the executable (hello_goodbye.dll) should be placed in the startup folder along with one of the example menu files above.
Was für example menu files?

Kann mir bitte jemand mitteilen ob ich auf dem richtigen Weg bin und ob das was ich vorhabe überhaupt funktionieren kann.

------------------
Gruß Robert

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

gfx-toxic.de
Moderator
Konstruktion / Anwenderbetreuung


Sehen Sie sich das Profil von gfx-toxic.de an!   Senden Sie eine Private Message an matthias-p  Schreiben Sie einen Gästebucheintrag für matthias-p

Beiträge: 501
Registriert: 09.06.2006

Teamcenter 11.3 / NX 11
Windows 10

erstellt am: 18. Okt. 2011 08:28    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 RobertM 10 Unities + Antwort hilfreich

Hallo Robert,

für solche Fälle gibt es die USER_EXITS.
Diese müssen mit einer Umgebungsvariable auf die dll die ausgeführt wird verdrahtet werden.

Mehr dazu steht unter dem Begriff oben in der Doku.

Code:
Change Displayed Part
  USER_CDISP
  The change displayed part user exit occurs before the displayed part is about to be changed explicitly from any user interface entry point, e.g. from the Windows main menu.

It is not possible to provide a default name for the operation.

The next interactive step is determined by the return code as follows: .

Return Code/Description

1 Cancel current assembly operation

3 Reserved for future use

n Select Part dialog with no default string. "n" is any other return code except 1 or 3

Change Work Part
  USER_CWORK
  The change work part user exit occurs after the Assemblies→Context Control→Set Work Part before a Component is chosen or when the work part is about to be changed from any other explicit user interface entry point

The next interactive step is determined by the return code as follows:

Return Code/Description

Cancel current assembly operation

Select Component dialog with the string (from string parameter) as the default.

Reserved for future use

n Normal operation with no default strings. "n" is any other return code except 1, 2 or 3.


Gruß

------------------
Gruß Matthias
------------------------------------
ICQ: 163190295

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

RobertM
Mitglied



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

Beiträge: 223
Registriert: 03.12.2008

noch NX 8.5 + TC Teamcenter 9.1.2.2 64-Bit

erstellt am: 18. Okt. 2011 10:21    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 Matthias,

den Aufruf der Function ufcdp hab ich hinbekommen.
Da sind aber noch 2 Probleme.

1. Die Funktion soll aufgerufen werden, nachdem das andere Part geöffnet wurde.

ok. Punkt 2 hat sich erledigt. Der Aufruf funktionert auch aus meiner dll.
2. Ich habe schon eine dll die ich nach dem NX-Start mit

public static int MyUnload = 2;
public static int GetUnloadOption(String dummy)
{return MyUnload;}

lade.
Da sollen auch die Eventhandler definiert werden.

------------------
Gruß Robert

[Diese Nachricht wurde von RobertM am 18. Okt. 2011 editiert.]

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

RobertM
Mitglied



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

Beiträge: 223
Registriert: 03.12.2008

noch NX 8.5 + TC Teamcenter 9.1.2.2 64-Bit

erstellt am: 19. Okt. 2011 08:24    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

Ok ich bin jetzt schon ein gutes Stück weiter.

Nach vielem rumbasteln habe ich herausgefunden, dass die *.dll's nicht wie in der Hilfe beschrieben im Ordner \application sondern in \startup liegen müssen.

Hat da jemand eine Erklärung dafür?

Hier noch ein Auszug aus dem Logfile:

AppBase: T:\nx6\win32\ugii_KL\startup\
Loaded assembly: CS_NX, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null from T:\nx6\win32\ugii_KL\startup\CS_NX.dll
Loaded assembly: NXOpen, Version=6.0.4.3, Culture=neutral, PublicKeyToken=null from T:\nx6\win32\ugii_KL\startup\NXOpen.dll

Noch eine Frage:
heißt das, dass dieses Menü nicht angepasst werden kann?

! *************** Window Menu ***************
! Mnemonics are not valid on the Window Menu pulldown
MENU UG_WINDOW

------------------
Gruß Robert

[Diese Nachricht wurde von RobertM am 19. Okt. 2011 editiert.]

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

ThomasZwatz
Ehrenmitglied V.I.P. h.c.
cadadmin



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

Beiträge: 5397
Registriert: 19.05.2000

erstellt am: 19. Okt. 2011 10:01    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 RobertM 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von RobertM:
... Nach vielem rumbasteln habe ich herausgefunden, dass die *.dll's nicht wie in der Hilfe beschrieben im Ordner \application sondern in \startup liegen müssen.

Hat da jemand eine Erklärung dafür? ....


Sie sollen ja beim NX Start gelesen werden: daher ins startup Directory ....

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

RobertM
Mitglied



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

Beiträge: 223
Registriert: 03.12.2008

noch NX 8.5 + TC Teamcenter 9.1.2.2 64-Bit

erstellt am: 19. Okt. 2011 10:16    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

Blöd von mir. Hät ich auch selber draufkommen können.
Danke

Wegen der anderen Frage. Kann man nicht alle Toolbars anpassen?

Das hier hat nicht funktioniert:
EDIT UG_WINDOW
MODIFY
BUTTON UG_WINDOW_CHANGE_PART
ACTIONS/POST my_app_test
END_OF_MODIFY

Ich bin immer noch auf der Suche nach einer Lösung für folgende Aufgabe:
Nachdem ich über das Menü Fenster die Anzeige gewechselt habe habe, möchte ich eine function aufrufen.

Mit den User Exit Change Displayed Part wird die function vor dem Wechsel aufgerufen.

------------------
Gruß Robert

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

mseufert
Moderator
Freiberuflicher CAD/CAM Ingenieur


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

Beiträge: 2624
Registriert: 18.10.2005

HP Z420
WIN7 64 Win 10
UG NX6-1980
3D Printer Prusa MK2 S

erstellt am: 19. Okt. 2011 12:57    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 RobertM 10 Unities + Antwort hilfreich

Hallo Robert,

die Funktion ufcdp hat Argumente. Da steht der Name des neuen Parts drin. Darüber läßt sich das Part auch ansprechen, selbst wenn noch ein anderes angezeigt wird.

Gruß, Michael

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

RobertM
Mitglied



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

Beiträge: 223
Registriert: 03.12.2008

noch NX 8.5 + TC Teamcenter 9.1.2.2 64-Bit

erstellt am: 20. Okt. 2011 12: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 Michael,

ich bekomme es nicht hin.

ich habe es so:
public static int ufcdp(String Argument)

und so probiert:
public static int ufcdp(String[] Argumente)

Der Aufruf von ufcdp funktioniert definitiv.
In meinem Logfile bekomme ich folgende Meldung:

ufcdp aufgerufen
    Der Aufruf ufcdp hat 1 Argumente.
    Argument 1: ist ein Leerstring

------------------
Gruß Robert

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

mseufert
Moderator
Freiberuflicher CAD/CAM Ingenieur


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

Beiträge: 2624
Registriert: 18.10.2005

HP Z420
WIN7 64 Win 10
UG NX6-1980
3D Printer Prusa MK2 S

erstellt am: 21. Okt. 2011 10:06    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 RobertM 10 Unities + Antwort hilfreich

Hallo Robert,

einen leeren String bekommst Du beim Umschalten über das Hauptmenü. Versuch's mal über's Kontextmenü im ANT, da sollte dann der richtige String drinstehen.

Die Argumente hab' ich als Stringarray angegeben.

Gruß, Michael 

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

RobertM
Mitglied



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

Beiträge: 223
Registriert: 03.12.2008

noch NX 8.5 + TC Teamcenter 9.1.2.2 64-Bit

erstellt am: 21. Okt. 2011 11:14    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

Tschuldigung,

was ist ANT? Hab ich noch nie gehört.

Gefunden: Assemblies Navigation Tool.
Versteh aber nicht was damit gemeint ist.
Ich hab doch keine Baugruppe.

------------------
Gruß Robert

[Diese Nachricht wurde von RobertM am 21. Okt. 2011 editiert.]

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

mseufert
Moderator
Freiberuflicher CAD/CAM Ingenieur


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

Beiträge: 2624
Registriert: 18.10.2005

HP Z420
WIN7 64 Win 10
UG NX6-1980
3D Printer Prusa MK2 S

erstellt am: 21. Okt. 2011 13:41    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 RobertM 10 Unities + Antwort hilfreich

ANT:=AssemblyNavigator, zu deutsch: Baugruppennavigator

Gruß, Michael

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

RobertM
Mitglied



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

Beiträge: 223
Registriert: 03.12.2008

noch NX 8.5 + TC Teamcenter 9.1.2.2 64-Bit

erstellt am: 21. Okt. 2011 13:49    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

Ja,

hab ich schon kapiert. Aber wie soll ich im Baugruppennavigator zu einer anderen Zeichnung oder Modell kommen?

Ich glaub ich hab den Unterschied zwischen Workpart, Displayable Object nicht begriffen.

Part = Modell?
Drawing=Zeichnung
Assembly=Baugruppe
Displayable Object ist doch irgenwie alles oder?

Nachtrag:
Auf dem Heimweg ist mir eingefallen, warum wir die ganze Zeit aneinander vorbeireden (schreiben). Du hast wahrscheinlich gemeint ich habe eine Baugruppe geladen und soll mit "zum Übergeordneten Teil wechseln" arbeiten.

Ich arbeite in der Regel so, das ich beim Zeichnungserstellen nur die Komponenten geladen habe und nicht die ganze Baugruppe. Drum habe ich es nicht kapiert.

Ich werde diesen Gedankengang am Montag weiterverfolgen.

Schönes Wochenende

------------------
Gruß Robert

[Diese Nachricht wurde von RobertM am 21. Okt. 2011 editiert.]

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

RobertM
Mitglied



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

Beiträge: 223
Registriert: 03.12.2008

noch NX 8.5 + TC Teamcenter 9.1.2.2 64-Bit

erstellt am: 24. Okt. 2011 07: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 Michael,

über den ANT funktioniert es mit dem Argument wie von dir beschrieben. Hab auch gar nicht daran gezweifelt.

Eine unbeantwortete Frage die ich noch habe betrifft "ug_main.men".
Bedeutet "Mnemonics are not valid", dass dieses Menü nicht angepasst werden kann?


------------------
Gruß Robert

[Diese Nachricht wurde von RobertM am 24. Okt. 2011 editiert.]

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



Entwicklungsingenieur Automotive Gesamtfahrzeug Package - DMU (m/w/d)
MITTELSTÄNDISCH ? PRAGMATISCH ? LEIDENSCHAFTLICH

ACONEXT ist Kompetenz in Technologieberatung, IT und Engineering. Gemeinsam arbeiten wir an den technischen Innovationen von morgen. Mit Leidenschaft für Technik und Technologie entwickeln wir mit unseren rund 700 Mitarbeiterinnen & Mitarbeitern neue Produktgenerationen für die Automobil- und Luftfahrtindustrie. Wir sind am Markt etabliert, langfristige Projekte und Geschäftsbeziehungen zeichnen uns aus....
Anzeige ansehenEntwicklung
mseufert
Moderator
Freiberuflicher CAD/CAM Ingenieur


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

Beiträge: 2624
Registriert: 18.10.2005

HP Z420
WIN7 64 Win 10
UG NX6-1980
3D Printer Prusa MK2 S

erstellt am: 24. Okt. 2011 12:35    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 RobertM 10 Unities + Antwort hilfreich

Hallo Robert,

Mnemonic heißt i.e. Gedächtnisstütze, Eselsbrücke etc., siehe Online- Wörterbuch.

Was das mit einem Menü zu tun hat: Hab' ich keinen Schimmer.

Das Menü läßt sich jedenfalls anpassen, Stichwort MenuScript.

Gruß, Michael

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