Autor Beitrag
sTk
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 70

Win 2000, Win XP
Turbo Delphi Pro, D2005 PE, Lazarus
BeitragVerfasst: Fr 16.03.07 14:51 
Hallo,

in meinem Programm kann ich ein Einstellungsfenster modal anzeigen. OK.

Jetzt überprüfe ich beim Programmstart(OnShow) bestimmte Werte, wenn etwas nicht stimmt, soll eben dieses Einstellungsfenster gleich beim Programmstart angezeigt werden.
Wie mach ich das am Besten?
Ich habe bis jetzt versucht, es einfach modal anzeigen zu lassen:

ausblenden Delphi-Quelltext
1:
Einstellungen.ShowModal					


Allerdings funktioniert das irgendwie nicht so richtig.

Gruß
Jakob Schöttl
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 929
Erhaltene Danke: 1


Delphi 7 Professional
BeitragVerfasst: Fr 16.03.07 15:01 
user profile iconsTk hat folgendes geschrieben:
Allerdings funktioniert das irgendwie nicht so richtig.


Bisschen genauer vllt?

Angezeigt wird es doch sicher, oder kommt eine Zugriffsverletzung?
sTk Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 70

Win 2000, Win XP
Turbo Delphi Pro, D2005 PE, Lazarus
BeitragVerfasst: Fr 16.03.07 15:23 
Also zuerst hat ichs im OnCreate-Ereignis der Hauptform, da kam die Fehlermeldung, dass er kein modales Fenster vor dem Eigentlichen erstellen kann, so sinngemäß. Genaue Fehlermeldung weiß ich jetzt nicht mehr, aber ist logisch, dass es nicht geht.

Dann hat ich im OnPaint-Ereignis, sah schonmal ganz gut aus, allerdings haben da die modalen Rückgabewerte der Buttons nicht funktioniert. Also mrok, mrcancel usw.

Jetzt hab ichs im OnShow-Ereignis, das geht soweit jetzt erstmal, allerdings wird jetzt nur das modale Fenster angezeigt und die Hauptform nicht und somit erscheint es irgendwo auf dem Bildschirm.

Und nebenher probier ich jetzt noch, das Ganze vielleicht weg von einzelnen Fenstern und alles evtl auf ein PageControl packen, ist vielleicht einfacher.

Gruß
jakobwenzel
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1889
Erhaltene Danke: 1

XP home, ubuntu
BDS 2006 Prof
BeitragVerfasst: Fr 16.03.07 15:32 
Such mal nach Suche in: Delphi-Forum, Delphi-Library SPLASHSCREEN

_________________
I thought what I'd do was, I'd pretend I was one of those deaf-mutes.
Jakob Schöttl
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 929
Erhaltene Danke: 1


Delphi 7 Professional
BeitragVerfasst: Fr 16.03.07 16:49 
user profile iconsTk hat folgendes geschrieben:
Also zuerst hat ichs im OnCreate-Ereignis der Hauptform, da kam die Fehlermeldung, dass er kein modales Fenster vor dem Eigentlichen erstellen kann, so sinngemäß. Genaue Fehlermeldung weiß ich jetzt nicht mehr, aber ist logisch, dass es nicht geht.

ist klar, das das nicht geht, weil das mainform eigentlich in der DPR als erstes erstellt wird, sprich der OnCreate aufgerufen wird, und da also das zweite Fenster noch nicht im Speicher existiert, gibts einen Fehler.

user profile iconsTk hat folgendes geschrieben:
Dann hat ich im OnPaint-Ereignis, sah schonmal ganz gut aus, allerdings haben da die modalen Rückgabewerte der Buttons nicht funktioniert. Also mrok, mrcancel usw.

ka, die ModalResult-Werte für die Buttons hast du ja richtig zugewiesen...

user profile iconsTk hat folgendes geschrieben:
Jetzt hab ichs im OnShow-Ereignis, das geht soweit jetzt erstmal, allerdings wird jetzt nur das modale Fenster angezeigt und die Hauptform nicht und somit erscheint es irgendwo auf dem Bildschirm.

ist klar, dass nur das Modale Fenster angezeigt wird, weil OnShow vor dem sichbar-machen des mainForms aufgerufen wird. und ShowModal hält ja die Prozedur an, in der es aufgerufen wird.
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Fr 16.03.07 16:58 

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".