Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  Inventor .NET
  Public Function beenden

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:  Public Function beenden (931 mal gelesen)
SKYSURFER
Mitglied
Maschinenbautechniker


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

Beiträge: 361
Registriert: 27.08.2004

office:
Dell T3500:
Xeon W3670 3,2GHz
Samsung SSD 256GB
Sata: 500GB
FX4000 - 2GB
IV 2012 SP2 Update3
Vault 2012 SP2

erstellt am: 02. Dez. 2018 16: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

Hallo,

ich bin gerade dabei ein AddIn zu erstellen. Nun habe ich ein Problem, und komme nicht weiter.
Problemstellung:


    - Ich verwende eine Form, bei der der Benutzer Buttons anwählen kann und daraufhin eine Sub gestartet wird.
    - Die Form bleibt während dessen aktiv. -> form.show()
    - Die Sub übergibt einige Parameter an eine Public Function.
    - Die Public Function startet sich immer wieder selbst. Das ist gewollt, da sonst der Benutzer den Befehl immer wieder neu starten müsste.

Die Form kann ich über einen Button schließen. Das Problem ist, dass beim Schließen der Form die Public Function noch immer aktiv ist, obwohl die Form geschlossen wurde. me.close()

Zwei Wunschvorstellungen von mir:


    1. Zugriff auf das RMK-Menü und ein „Ende“ oder „Abbrechen“ analog zu den IV-Befehlen wäre möglich
    2. Bei Click auf den Button wird die Public Function beendet.

Habt Ihr einen Tipp für mich?


Besten Dank und einen schönen Sonntag noch.

Gruß
SKYSURFER

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

KraBBy
Mitglied
Maschinenbau-Ingenieur


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

Beiträge: 601
Registriert: 19.09.2007

erstellt am: 03. Dez. 2018 10:08    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 SKYSURFER 10 Unities + Antwort hilfreich

An der Stelle, an der sich die Public Funciton wieder "selbst startet" (ich nehme an, sich wieder selbst aufruft: Rekursion) sollte ein Abbruch-Kriterum rein. Evtl. hast Du eine Instanz der Form greifbar, und kannst prüfen (If form1 Is Nothing ...) (bin nicht sicher, ob das auch zutrifft). Oder es lässt sich eine Eigenschaft der Form nutzen, ActiveForm, IsDisposed.
https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.form.activeform?view=netframework-4.7.2
https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.control.isdisposed?view=netframework-4.7.2#System_Windows_Forms_Control_IsDisposed

Alternativ könnte ich mir eine Flag (Boolean) vorstellen, die gesetzt wird beim .Show der Form und eben weggenommen wird beim .Close. Die Logik könnte auch in die zugehörigen Events geschrieben werden, Activated und FormClosing. Sichtbarkeit der Flag ist natürlich ein Thema...

Was mir noch einfällt: gibt es bereits ein Abbruch-Kriterium für die Rekursion? Ist die Function also irgendwann mal "fertig"? Dann wäre obiges Vorgehen ja eher schlecht.

Du merkst, ich habe nicht groß Ahnung und rate etwas rum. Vielleicht ist trotzdem was nützliches dabei.

------------------
Gruß KraBBy

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

SKYSURFER
Mitglied
Maschinenbautechniker


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

Beiträge: 361
Registriert: 27.08.2004

office:
Dell T3500:
Xeon W3670 3,2GHz
Samsung SSD 256GB
Sata: 500GB
FX4000 - 2GB
IV 2012 SP2 Update3
Vault 2012 SP2

erstellt am: 08. Feb. 2019 09: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,

ich habe es nun so gelöst, dass die Form bei der Tasteneingabe "ESC" geschlossen wird. Ist die Form geschlossen, so wird auch der aktuelle Befehl beendet.

Gruß
SKYSURFER

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