![]() |
Form.ShowModal->Exception: geht bei sichtbarem Form nicht
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,
kennt jemand eine Fehlermeldung (D5) : "Cannot make a visible Form modal!" :? Es geht um ein Formular, welches mit
Delphi-Quellcode:
erzeugt und dann mit
MyForm:=TMyForm.Create
Delphi-Quellcode:
geöffnet wird.
MyForm.ShowModal
Welches in den Projektoptionen NICHT unter den Autocreate-Forms (also links) steht, sondern erst auf konkretes create das Licht der Welt erblickt. :nerd: Ich kapiere nicht, was mit "visible" gemeint ist. Das Formular ist ja vor dem showmodal nur instanziert, aber noch nicht sichtbar. Das will ich ja gerade erst durch showmodal erreichen... Das Form wird nach Bestätigen der Fehlermeldung dann geöffnet, aber eben nicht modal. Es soll aber Bestandteil einer Formularaufruffolge sein (quasi wizard-mässig), deshalb wäre es schwierig und unsauber, die Aufrufreihenfolge zu kontrollieren mit nichtmodalen Dialogen... :| Bin für jeden Fingerzeig (auch direkt auf mich, wenn ich mal wieder zu doof bin :drunken: ) superdankbar. Gruss, ST2000 |
Re: Form.ShowModal->Exception: geht bei sichtbarem Form n
Moin ST2000,
kann ich Dir nicht erklären, denn bei mir, auch D5, geht das problemlos. Hast Du irgendetwas in den Ereignissen des Form2 stehen? Ist das vielleicht ein MDI Child? |
Re: Form.ShowModal->Exception: geht bei sichtbarem Form n
Hallo, Christian.
Jjjaaa, ist ein MDI-Child ?!? :roll: Sollte das etwa bei MDI-Childs nicht möglich sein ??? :lol: Ich habe nämlich eine Unit geschrieben, die eine Art Prozess-Definition aus einer DB ausliest, und dann die dort verzeichneten Dialoge (die ich eben gern mit showmodal aufrufen würde) nacheinander aufruft. Ich muss irgendwie nach dem Schliessen jedes Dialogs wieder zu der aufrufenden Unit zurückkommen, um dort dann ggf. Plausibilitätsprüfungen vorzunehmen, und den ggf. nächsten Dialog aufzurufen... Zwar erfolgt das Form.Create sowie Form.Show schon in der Aufruf-Unit, aber ich bin unsicher, ob das Programm nach
Delphi-Quellcode:
zuverlässig wieder an die Zeile nach dem
Form.close (mit Action:=caFree)
Delphi-Quellcode:
in der Aufruf-Unit zurückspringt, oder nur dann, wenn der User nicht zwischendurch irgendeinen anderen Dialog (und sei es nur die Hilfe) anklickt...
Form.Show
Deshalb wollte ich es halt mit showmodal machen. Da kann ich ja einen Ergebniswert
Delphi-Quellcode:
einer Dummy-Variablen in der Aufruf-Unit zuweisen, was Delphi ja zwingt, dort hin zurückzuspringen.
Form.Showmodal:=Ergebnis
Wäre es auch ohne showmodal so ? Gruss, Stefan |
Re: Form.ShowModal->Exception: geht bei sichtbarem Form n
Zitat:
...:cat:... |
Re: Form.ShowModal->Exception: geht bei sichtbarem Form n
Ach DAS ist mit visible gemeint. Danke. Man lese im ObjectInspektor ... :oops:
Aber wenn ich das versuche,
Delphi-Quellcode:
dann erhalte ich die Fehlermeldung 'cannot hide a MDI-Child'.
Form.Visible:=false
Allerdings ist das Form mit
Delphi-Quellcode:
fest an das MDI-Mainform gefesselt. Kann ich dann das Kindform auch als Nicht-MIDI-Child betreiben ? Oder muss ich dann irgendwelche Inkompatibilitäten fürchten (z.B. nicht in der Windows-Liste in dem gleichnamigen Menüpunkt des Mainforms vorhanden) ?
Align:=alLeft
Gruss, Stefan |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:09 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