Kampfkartoffel Geschrieben 1. Juni 2006 Geschrieben 1. Juni 2006 Hallo, kennt einer von Euch einen Befehl, der sofort das laufende Programm unterbricht? Die Befehle, die ich gefunden habe sind: OnOK, OnCancel oder EndDialog. Diese beenden jedoch nicht direkt das komplette Programm. Gibt es nicht irgendeinen Holzhammerbefehl, so eine Art Arnold Schwarzenegger? Dank und Gruß KK Zitieren
Kampfkartoffel Geschrieben 1. Juni 2006 Autor Geschrieben 1. Juni 2006 Hallo baba007, danke für die schnelle Antwort. Ich werde das morgen direkt ausprobieren. Gruß KK Zitieren
Klotzkopp Geschrieben 2. Juni 2006 Geschrieben 2. Juni 2006 baba007, wenn du schon exit empfiehlst, dann weis bitte auch auf die Gefahren hin: Beim Aufruf von exit werden Destruktoren von Objekten mit automatischer Lebensdauer nicht aufgerufen. Kampfkartoffel, wenn du genauer beschreiben könntest, welche Art von Anwendung du hast und warum du sie beenden willst, ließe sich vielleicht auch eine weniger rabiate Möglichkeit finden. Zitieren
Kampfkartoffel Geschrieben 2. Juni 2006 Autor Geschrieben 2. Juni 2006 Hallo baba007 und Klotzkopp, exit funktioniert wunderbar, jedoch arbeite ich mit CList-Objekten, die eine automatische Lebensdauer haben. Mein Programm besteht aus einem Dialog, der aus Dateien inhaltlich Datenpfade liest und checkt, ob diese Datenpfade existieren. Wenn die Datenpfade existieren, werden sie in eine Liste eingetragen. Sobald ein Pfad nicht existiert wird ein anderer Dialog aufgerufen, der fragt, wie der User damit umgehen möchte, ob er den Pfad löschen, beibehalten oder neu suchen möchte. Die Firma für die ich das Programm schreibe, möchte in diesem Dialog auch noch einen Button, der das gesamte Programm sofort beendet. Ich habe bisher noch keinen Befehl gefunden, der das komplette Programm unverzüglich schließt. Wenn ich mit EndDialog oder OnOK arbeite, macht das Programm erst mal weiter und schließt den Hauptdialog bedeutend später. Gruß KK Zitieren
Klotzkopp Geschrieben 2. Juni 2006 Geschrieben 2. Juni 2006 Der Wert, den du bei EndDialog im inneren Dialog angibst, landet als Rückgabewert von DoModal im äußeren Dialog. Darauf kannst du reagieren und dann auch den äußeren Dialog mit EndDialog beenden. Zitieren
Kampfkartoffel Geschrieben 2. Juni 2006 Autor Geschrieben 2. Juni 2006 Hallo Klotzkopp, soll also heissen, wenn ich den zweiten Dialog mit z.B. EndDialog(1) beende, dann kann ich auf diesen Wert mit einer if-Abfrage in meinem HauptDialog reagieren und ihm sagen, dass er den Hauptdialog auch schließen soll? Gruß KK Zitieren
Klotzkopp Geschrieben 3. Juni 2006 Geschrieben 3. Juni 2006 Genau. Du solltest nur nicht gerade 1 nehmen, denn das ist IDOK. Wie wäre es mit IDABORT? Zitieren
Kampfkartoffel Geschrieben 3. Juni 2006 Autor Geschrieben 3. Juni 2006 Ja danke Klotzkopp, das hört sich deutlich besser an. Das werde ich ausprobieren. Jetzt habe ich auch endlich den Sinn der Syntax von EndDialog verstanden. Du scheinst ja auf dem Programmiersektor ziemlich fit zu sein. Kannst Du mal sagen, wie Du zu diesem Wissen gelangt bist? Kannst Du gute Bücher oder irgendeine bestimmte Herangehensweise empfehlen? Ich will ja nicht auf ewig so dämliche Fragen stellen müssen Gruß KK Zitieren
Kampfkartoffel Geschrieben 6. Juni 2006 Autor Geschrieben 6. Juni 2006 Abbrechen mit EndDialog funktioniert nun einwandfrei. Danke noch mal KK Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.