![]() |
sich von modal geöffneter form lösen...
hallo.
eine form wird mit showmodal geöffnet:
Code:
daraufhin kommt das programm irgendwann in eine prüfprozedur:
if (frm_check_fps.ShowModal = mrOK)
then ausgabe_xyz;
Code:
diese prozedure wird ja nicht richtig abgeschlossen.
procedure checkit(Sender: TObject);
begin if variable_xyz = 0 then begin ModalResult := mrOK; {schliessen der modal-geöffneten form} Close; end; end; ich möchte also die prozedur verlassen und die modal geöffnete form schliessen. der aufruf "ModalResult := mrOK;" bewirkt genau sowenig wie das "Close;" :wall: hat jemand ne idee wie ich an dieser stelle die form schliessen kann? thx |
Re: sich von modal geöffneter form lösen...
Wo ist denn checkit definiert? In dem Form das geschlossen werden soll ? :gruebel:
|
Re: sich von modal geöffneter form lösen...
Probier es mal mit Release.
Ciao HeZa |
Re: sich von modal geöffneter form lösen...
Ähh. Release würde ich nicht unbedingt empfehlen, da dann das Formular wie mit Free zerstört wird.
|
Re: sich von modal geöffneter form lösen...
Zitat:
die vorhergehende form müßte wieder "aktiviert" werden.. wie? |
Re: sich von modal geöffneter form lösen...
Zitat:
Diese vorgehensweise ist aber nicht wirklich schön und eigentlich sollte es mit ModalResult funktionieren. Was ist denn mit meiner ersten Frage, wo checkit definiert ist. Erkennt man ja aus deinem angegeben Quellcode nicht wirklich. |
Re: sich von modal geöffneter form lösen...
also..
wenn die form modal geöffnet wird wird in der sofort nachgeschaut:
Code:
in dieser procedure wird dann geprüft:
procedure Tfrm_check_fps.FormActivate(Sender: TObject);
Code:
dieses DM_FP ist ein seperates datenmodul.
procedure Tfrm_check_fps.FormActivate(Sender: TObject);
begin if DM_FP.check_db_fp = 0 then ModalResult := mrOK; end; und check_db_fp ist eine function vom typ integer. das problem ist wahrschinlich, das das ganz in "FormActivate" steht. aber ich muss beim aufruf prüfen. kann man das evtl. anders regeln?? |
Re: sich von modal geöffneter form lösen...
Ja, genau das ist das Problem. Denn nach FormActivate wird ModalResult initialisiert. Du solltest also die Prüfung vor dem ShowModal machen. Am besten du machst dazu eine öffentliche Funktion in das Formular (in public) die true oder false zurück gibt.
|
Re: sich von modal geöffneter form lösen...
danke.. :thumb:
werde dann aufruf vor dem showmodal machen... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:31 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz