Delphi-PRAXiS
Seite 3 von 4     123 4      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Lazarus (IDE) (https://www.delphipraxis.net/81-lazarus-ide/)
-   -   Wie ShowModal Form aus dem HauptForm schließen? (https://www.delphipraxis.net/185219-wie-showmodal-form-aus-dem-hauptform-schliessen.html)

AlexII 22. Mai 2015 20:28

AW: Wie ShowModal Form aus dem HauptForm schließen?
 
Zitat:

Zitat von DeddyH (Beitrag 1302672)
Wäre es da nicht einfacher, wenn das modale Formular den Status prüft und sich selbst schließt?

Aber ich muss doch den Status von dem MainForm veranlassen, oder? Hm...

AlexII 22. Mai 2015 20:31

AW: Wie ShowModal Form aus dem HauptForm schließen?
 
Zitat:

Zitat von Sir Rufo (Beitrag 1302673)
@AlexII

Zeig uns mehr Code und wir können dir helfen

Das sind nur ein Paar Zeilen weit verstreut.

Aber ich habe es schon verstanden... es wird gleich laufen wie geschmiert! :thumb:

EWeiss 22. Mai 2015 20:40

AW: Wie ShowModal Form aus dem HauptForm schließen?
 
Ich kenne das aus anderen Sprachen da wird das mit modalen Forms anders gelöst.
Wird eine Form Modal aufgerufen ist eine Eingabe in der Hauptform nicht mehr möglich.
Sollte zumindest so sein.
Welchen zweck sonst verfolgt eine Modale Form .. nur diesen das wie schon gesagt eingaben
in der Hauptform verwehrt werden und nur in dieser Modalen Form eingaben möglich sind
so lange bis diese geschlossen wird.

Möchtest du das nicht dann erstelle keine Modale Form.
Die Frage wäre also welchen zweck verfolgst du damit das du eine Modale Form erstellst(aufrufst)

gruss

Sir Rufo 22. Mai 2015 20:46

AW: Wie ShowModal Form aus dem HauptForm schließen?
 
@Perlsau

Ich behaupte mal dass AlexII hier einfach die falschen Schlüsse zieht und nur denkt, dass diese von ihm gezeigten Codezeilen für die Fehlermeldung verantwortlich sind.

Die Fehlermeldung bezieht sich aber ganz eindeutig auf ShowModal und davon ist in dem hier gezeigten Code nichts zu sehen, ergo sind die nicht verantwortlich.

Und eine modale Form ist nicht auf eine Auswahl von was auch immer beschränkt. Bei einem Datei-Auswahl-Dialog macht es allerdings zu 99,9999% keinen Sinn diesen nach einer gewissen Zeit automatisch zu schliessen. Es gibt aber eben mehr als nur das ;)

Perlsau 22. Mai 2015 20:49

AW: Wie ShowModal Form aus dem HauptForm schließen?
 
@AlexII:

Also egal, was bei dir jetzt Online oder Offline bedeutet: Ich gehe mal davon aus, daß es sich um Ereignisse handelt, für die du Ereignisbehandlungen schreibst:
Delphi-Quellcode:
Procedure Mainform.Offline(Sender: TObject);
Begin
  Self.Enabled := False;
End;

Procedure Mainform.Online(Sender: TObject);
Begin
  Self.Enabled := True;
End;
Mit Enabled := False erreichst du, daß das Hauptfenster nicht mehr auf Benutzeraktionen reagieren kann. Auch ein Haupt- oder Objektmenü ist davon betroffen. Willst du dazu noch alles verdecken, genügt ein Frame, den du auf die Hauptform mit Align := alClient legst. Damit hast du dir das ganze Modalzeugs erspart.

@Sir Rufo:
d'accord

EWeiss 22. Mai 2015 20:58

AW: Wie ShowModal Form aus dem HauptForm schließen?
 
Zitat:

Mit Enabled := False erreichst du, daß das Hauptfenster nicht mehr auf Benutzeraktionen reagieren kann.
Soll der Anwender dann die Anwendung im Taskmanager beenden?
Oder wie stellst du dir das vor.

Mit dem Frame hingegen stellt das kein Problem dar..
So kann man wenigstens die Anwendung selbst noch schließen wenn man genug vom Offline Modus hat.

gruss

Perlsau 22. Mai 2015 21:04

AW: Wie ShowModal Form aus dem HauptForm schließen?
 
Guter Einwand :thumb:

Bei der Lösung mit dem modalen Fenster hat er aber dasselbe Problem, so lange er auf der modale Form keine Schaltflächen anbietet, um selbige zu schließen. Und bei einem Frame, der via Align := alCLient auf der Form liegt, sind die Menüs, so vorhanden, weiterhin bedienbar, außer er schaltet sie ebenfals auf Enabled := False.

AlexII 22. Mai 2015 21:05

AW: Wie ShowModal Form aus dem HauptForm schließen?
 
Was ist der Unterschied zwischen Frame und nem Form, das nicht modal aufgerufen wird?

AlexII 22. Mai 2015 21:10

AW: Wie ShowModal Form aus dem HauptForm schließen?
 
Zitat:

Zitat von Sir Rufo (Beitrag 1302680)
@Perlsau

Ich behaupte mal dass AlexII hier einfach die falschen Schlüsse zieht und nur denkt, dass diese von ihm gezeigten Codezeilen für die Fehlermeldung verantwortlich sind.

Die Fehlermeldung bezieht sich aber ganz eindeutig auf ShowModal und davon ist in dem hier gezeigten Code nichts zu sehen, ergo sind die nicht verantwortlich.

Und eine modale Form ist nicht auf eine Auswahl von was auch immer beschränkt. Bei einem Datei-Auswahl-Dialog macht es allerdings zu 99,9999% keinen Sinn diesen nach einer gewissen Zeit automatisch zu schliessen. Es gibt aber eben mehr als nur das ;)

Aber wie kann ein ShowModal diesen Fehler verursachen? Das OfflineForm wird doch super angezeigt. Nur beim Schließen vom HautpForm heraus knallt es. :gruebel:

EWeiss 22. Mai 2015 21:12

AW: Wie ShowModal Form aus dem HauptForm schließen?
 
Zitat:

Zitat von AlexII (Beitrag 1302685)
Was ist der Unterschied zwischen Frame und nem Form, das nicht modal aufgerufen wird?

Perlsau sagte es doch schon..
Es verdeckt deine Controls Button usw.. so das keine Eingaben in der Hauptform selbst mehr möglich sind.
Ausgenommen vom Menu natürlich.
Da hat er aber auch schon einiges zu gesagt.

gruss


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:53 Uhr.
Seite 3 von 4     123 4      

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