Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi fenster schliest sich nicht (https://www.delphipraxis.net/67-fenster-schliest-sich-nicht.html)

lkz633 9. Jun 2002 11:00


fenster schliest sich nicht
 
hallo, nachdem wie ihr ja alle wisst das df zu ist, versuche ichs ihr mal :D

Mein Problem:
Code:
 showmessage('blablablablabla');
    Close;
    fchange.showmodal;
Das Fenster bleibt trotz des close; offen. wiso ?


PS: Forum sieht spitze aus, vor allem das automatische einfuegen der tags ist supe

DeCodeGuru 9. Jun 2002 11:06

Ist fchange bei dir das Formular? Wenn ja, dann löst Delphi bei mir nen netten Fehler auf, der ja auch irgendwie ein bisschen logisch ist:

http://home.pages.at/wsoftware/img/dfehler.jpg

Daniel B 9. Jun 2002 11:10

Hi,

du schliesst das Fenster und bei änderung zeigst du es Modal an. Entweder es geht oder es geht nicht wirklich un du hast ein Error.

Grüsse, Danie :)

lkz633 9. Jun 2002 12:02

close
 
ich habe ein hauptformular, von dem wird ein fenster modal angezeigt, dieses fenster soll geschlossen werden und ein anderes geoeffnet werden, das problem liegt also wahrscheinlich daran, dass ich das fenster modal geoeffnet habe, was ich aber nicht veraendern kann. Wie loese ich dies ? Gibts noch eine andere Anweisung ausser close; bei der ich dieses problem dann nicht habe ?

Danke fuer eure Hilfe

MathiasSimmack 9. Jun 2002 12:05

Das wäre doch aber unsinnig, das Fenster zu schließen, um es dann wieder modal aufzurufen, DeCodeGuru. (Na, wenn das mal nicht der Grund ist ... :wink:) Ich denke und hoffe, dass "fChange" eine andere Form sein.

Meine Frage: das Fenster, das geschlossen werden soll, ist das vielleicht das Hauptfenster der Anwendung? Wenn ja, wüsste ich nicht, was es bringen soll. Sobald es geschlossen wird, gilt das für die ganze Anwendung. Dein modales Fenster dürfte also nicht mehr zu sehen sein.

Bei mir war das jedenfalls so.

Also, entweder ist bei dir "fChange.ShowModal" schneller als "Close", was erklären würde, warum das Fenster nicht zugeht (dazu müsstest du das modale Fenster erst mal schließen), oder bei "Close" reagiert irgendeine andere Funktion, aber nicht die des Fensters, die geschlossen werden soll. Setz doch spaßeshalber mal den Namen der Form oder "self" davor:

Code:
Form1.Close; { oder } self.Close;

lkz633 9. Jun 2002 12:19

Code:
 fassign.Close;
    fchange.showmodal;

Natuerlich handelt es sich um 2 unterschiedliche Fenster, beide sind nicht das Hauptfenster

MathiasSimmack 9. Jun 2002 12:54

Dann schätze ich, dass du das Fenster "fAssign" selbst mit "ShowModal" aufrufst (vom Hauptfenster, oder von wo auch immer ...) Wenn du das mal änderst in:
Code:
fAssign.Show
dann geht´s.

lkz633 9. Jun 2002 12:58

genau das will ich aber nicht, gibt es nicht noch eine andere loesung ?

gruss lkz633

MathiasSimmack 9. Jun 2002 20:38

Zitat:

Zitat von lkz633
genau das will ich aber nicht ...

Warum nicht?
Ist das Abneigung gegen die "Show"-Anweisung, oder steckt ein programmtechnischer Grund dahinter? Bitte erläutern!

OregonGhost 10. Jun 2002 10:03

Wenn du schon das erste Formular mit ShowModal() aufrufst, kannst du doch auch das zweite direkt hinter dem ersten ShowModal() aufrufen, das sollte denselben Effekt haben wie ShowModal() nach der Close-Anweisung des ersten Formulars - und den Rückgabewert des ersten Formulars hast du hier auch schon zur Verfügung.


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:25 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz