![]() |
Zwei Forms Modal anzeigen
Hallo,
ist es Möglich zwei Forms _gleichzeitig_ Modal anzuzeigen? Gibt es da einen "Hack" oder Ähnliches? Habe schon versucht eine andere Form per
Delphi-Quellcode:
wiederzubeleben, leider ohne Erfolg.
Enabled := true
Grüße, Win32.API |
AW: Zwei Forms Modal anzeigen
Modal geht eigentlich nur Einmal. (also jeweils für die letzte Modal aufgerufene Form).
Ich weiß jetzt nicht wie Delphi die nichtmodalen Forms sperrt, aber eventuell kann man diese Forms auch selber sperren und würde/könnte dann seine Forms nichtmodal, aber dennoch fast wie modal, anzeigen. bzw., was passiert, wenn du die erste Form modal (ShowModal) und danach die zweite Form nicht modal (nur via Show im OnGreate/OnShow der Ersten) anzeigst? |
AW: Zwei Forms Modal anzeigen
Das geht schon, allerdings nur verschachtelt.
Man erstelle ein neues Form, platziere einen Button darauf und schreibe folgenden Code in den ButtonClick-Event:
Delphi-Quellcode:
procedure TForm.Button1Click(Sender: TObject);
var Form: TForm; begin Form := TForm.Create(Application); try Form.ShowModal; finally Form.Free; end; end; |
AW: Zwei Forms Modal anzeigen
geht eben nicht, denn jeder Aufruf irgendeines .ShowModal sperrt alle Forms, welche zu diesem Zeitpunkt schon angezeigt werden.
Heißt also, daß du mit Form2 in deinem Button die Form1 auch mit sperren würdest. Probier es einfach mal aus:
Delphi-Quellcode:
procedure TForm5.Button1Click(Sender: TObject);
var f: TForm5; begin f := TForm5.Create(self); f.Caption := 'ShowModal ' + TimeToStr(now); f.ShowModal; f.Free; end; procedure TForm5.Button2Click(Sender: TObject); var f: TForm5; begin f := TForm5.Create(self); f.Caption := 'Show ' + TimeToStr(now); f.Show; // f wird von seinem Parent freigegeben, end; |
AW: Zwei Forms Modal anzeigen
Zitat:
Nach ein bisschen Nachdenken und Debuggen bin Ich noch auf Folgende Lösung gekommen:
Delphi-Quellcode:
.
EnableWindow(Form3.Handle, True)
Grüße |
AW: Zwei Forms Modal anzeigen
Zitat:
|
AW: Zwei Forms Modal anzeigen
Zitat:
|
AW: Zwei Forms Modal anzeigen
Ja, war meinerseits unglücklich Formuliert, Sorry. :dp:
|
AW: Zwei Forms Modal anzeigen
Hallo,
eine Möglichkeit wäre, wenn ich dein Problem richtig verstehe, Formsyle auf stayontop für beide Forms zu setzen und den Aufruf mit application.normalizetopspots; form.showmaodal; und in onclose application restoretopspots. Olaf |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:06 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