AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Dialog schließt sich nicht von selbst
Thema durchsuchen
Ansicht
Themen-Optionen

Dialog schließt sich nicht von selbst

Ein Thema von phlux · begonnen am 6. Okt 2003 · letzter Beitrag vom 7. Okt 2003
Antwort Antwort
Seite 1 von 3  1 23      
Benutzerbild von phlux
phlux

Registriert seit: 4. Nov 2002
Ort: Witten
1.335 Beiträge
 
Delphi 6 Personal
 
#1

Dialog schließt sich nicht von selbst

  Alt 6. Okt 2003, 20:25
Moin
Ich schreibe gerade einen Dialog für mein Programm der den Fortschritt der Suche Visualisiert. So weit so gut. Nachdem ich im OnActivate Event des Dlg's mit Search die Suche starte, will sich der Dlg nicht mehr von alleine schließen lassen (Die Suche ist abgeschlossen). Ich lasse den Dlg mit ShowModal anzeigen, und wollte ihn nach erfolgreicher Suche mitModalResult := mrOK; wieder schließen klappt aber nicht auch ein einfaches Close; tut's nicht. Was tun??

mfg phluphie
Christian "phlux" Arndt
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Dialog schließt sich nicht von selbst

  Alt 6. Okt 2003, 23:05
Kannst du mal den Quelltext posten, zumindest den teil um den es geht, den rest kannst du ja rausnehmen. Manchmal liegts einfach an einem bug in der Delphi version. Bsp: Drucken bei Delphi 6 = immer Y-Koordinate < 0 in meiner jetzigen Version nicht mehr außerdem kommt jetzt beim textdrucken ein rand herum.. kann also sein dein Delphi hat einen bug.. naja, poste einfach mal den source, vielleicht lässt sich was machen
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von phlux
phlux

Registriert seit: 4. Nov 2002
Ort: Witten
1.335 Beiträge
 
Delphi 6 Personal
 
#3

Re: Dialog schließt sich nicht von selbst

  Alt 7. Okt 2003, 13:13
Morgen!
Also aufrufen tu ich den Dialog/Form wie folgt:
Delphi-Quellcode:
procedure TMainForm.FormActivate(Sender: TObject);
begin
  with TdlgSearch.Create(Self) do
  begin
    try
      ShowModal;
    finally
      Free;
    end;
  end;
end;
Anschließend passiert folgendes:
Delphi-Quellcode:
procedure TdlgSearch.FormActivate(Sender: TObject);
begin
  StartSearch;
end;
Dann das:
Delphi-Quellcode:
procedure TdlgSearch.StartSearch;
begin
  //Hier findet eine lange und qualvolle Suche statt ;)
  ModalResult := mrOK;
end;
Eigentlich müsste die Form danach doch wieder verschwinden, da ich doch per Hand das ModalResult auf mrOK setzte oder??

mfg phlux
Christian "phlux" Arndt
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: Unterhaching
11.412 Beiträge
 
Delphi 12 Athens
 
#4

Re: Dialog schließt sich nicht von selbst

  Alt 7. Okt 2003, 13:14
Das Problem ist das Activate-Ereignis, in diesem kannst Du keinen Befehl zum wieder schließen ausführen

......
Daniel Lizbeth
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Benutzerbild von phlux
phlux

Registriert seit: 4. Nov 2002
Ort: Witten
1.335 Beiträge
 
Delphi 6 Personal
 
#5

Re: Dialog schließt sich nicht von selbst

  Alt 7. Okt 2003, 13:18
Ahhh ich werd noch verrückt aber wie stelle ich es jetzt an, dass der Dialog gezeigt wird, danach die Suche ausgeführt wird und dann der Dialog geschlossen wird. Weiß jemand Rat??
Christian "phlux" Arndt
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: Unterhaching
11.412 Beiträge
 
Delphi 12 Athens
 
#6

Re: Dialog schließt sich nicht von selbst

  Alt 7. Okt 2003, 13:32
Versuche mal anstatt des Close ein

SendMessage(Handle, WM_CLOSE, 0, 0); ......
Daniel Lizbeth
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Benutzerbild von phlux
phlux

Registriert seit: 4. Nov 2002
Ort: Witten
1.335 Beiträge
 
Delphi 6 Personal
 
#7

Re: Dialog schließt sich nicht von selbst

  Alt 7. Okt 2003, 13:34
Nein, funktioniert auch nicht
Christian "phlux" Arndt
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#8

Re: Dialog schließt sich nicht von selbst

  Alt 7. Okt 2003, 14:14
Moin Phlux,

ich hab' da einen Workaround für Dich:

Statt die StartSearch Prozedur über OnActivate o.ä. zu starten, starte sie mit einem Timer.

Delphi-Quellcode:
procedure TDlgSearch.Timer1Timer(Sender: TObject);
begin
  Timer1.Enabled := false;
  StartSearch;
  ModalResult := mrOK;
end;
Auf was Du das Interval einstellst musst Du mal ausprobieren.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von phlux
phlux

Registriert seit: 4. Nov 2002
Ort: Witten
1.335 Beiträge
 
Delphi 6 Personal
 
#9

Re: Dialog schließt sich nicht von selbst

  Alt 7. Okt 2003, 14:25
Hmm, das mit dem Timer ist mir auch schon in den Sinn gekommen, aber ich hab die Idee schnell wieder verschmissen , aber wenn mir schon ein Mod der DP dazu rät werd ich es wohl so machen, vielleicht findet sich ja irgendwann eine bessere Lösung

mfg phluphie
Christian "phlux" Arndt
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#10

Re: Dialog schließt sich nicht von selbst

  Alt 7. Okt 2003, 14:37
Moin Phlux,

so funktioniert es wenigstens

Ich hab' Deine Variante auch mal ausprobiert und war selber überrascht, dass es nicht funktioniert, ohne wenigsten eine Fehlermeldung zu produzieren.
Es werden nämlich OnCloseQuery und OnClose aufgerufen, nur hat das keine Wirkung.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:39 Uhr.
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