AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Auf andere Aktion warten

Ein Thema von Praktikant · begonnen am 5. Nov 2003 · letzter Beitrag vom 5. Nov 2003
Antwort Antwort
Praktikant

Registriert seit: 24. Sep 2003
131 Beiträge
 
Delphi 5 Enterprise
 
#1

Auf andere Aktion warten

  Alt 5. Nov 2003, 10:24
Ich habe eine schleife die eine variable Anzahl von Wiederholungen durchlaufen soll.
Doch es soll bei jedem Durchlauf gewartet werden bis ein durch die Schleife erzeugtes Formular wieder geschlossen wird, bzw. ein button auf diesem gedrückt wurde.

Bin da auf waitfor gestossen, aber das scheint doch etwas kompliziert und es gibt doch sicherlich was einfacheres.
  Mit Zitat antworten Zitat
Minz

Registriert seit: 19. Dez 2002
476 Beiträge
 
#2

Re: Auf andere Aktion warten

  Alt 5. Nov 2003, 12:31
Eine Möglichkeit wäre, wenn du ein Fenster mit showmodal aufrufst.

Die Verarbeitung der Schleife geht dann erst weiter wenn dieses
Fenster ein Ergebnis geliefert hat (siehe ModalResult)

Eine andere Möglichkeit wäre eine weitere Schleife innerhalb der
Schleife zu benutzen. Die innere Schleife hätte dann als
Abbruchkriterium zum Beispiel einen Variablenwert, den du beim
Button-Click setzt.

Gruß Minz
  Mit Zitat antworten Zitat
Praktikant

Registriert seit: 24. Sep 2003
131 Beiträge
 
Delphi 5 Enterprise
 
#3

Re: Auf andere Aktion warten

  Alt 5. Nov 2003, 13:17
das mit showmodal klingt ganz gut. Ich habe nur das Prob, dass nach schliessen des 2. Formulars nicht mehr in meine schleife zurückgekehrt wird, bzw. mir ist unkar wie ich in die schleife reinschreibe dass er fortfahren soll.

Hier einen Auszug aus meinem Code:
Delphi-Quellcode:
...
    for j:=1 to AnzahlNeuStoer do
    begin
      [...]
      StoerungsmeldungsfensterErzeugen; //Procedure welche 2. Formular erstellt
      [...]
    end;
...
und folgendermassen wird das 2. Formular erstellt:
Delphi-Quellcode:
procedure TFormStoerung.StoerungsmeldungsfensterErzeugen;
begin
  Application.Initialize;
  with TFormStoerung.Create(nil) do
  try
    Update;
    application.CreateForm (TFormStoerungsmeldung, FormStoerungsmeldung);
  finally
    Free;
  end;
  Application.Run;
end;
  Mit Zitat antworten Zitat
Minz

Registriert seit: 19. Dez 2002
476 Beiträge
 
#4

Re: Auf andere Aktion warten

  Alt 5. Nov 2003, 14:52
versuch mal:

Delphi-Quellcode:
with Stoerung.create(application) do begin
  try
    showmodal;
  finally
    free;
  end;
end;
Sollte so schon funzen...

Gruß Minz
  Mit Zitat antworten Zitat
Praktikant

Registriert seit: 24. Sep 2003
131 Beiträge
 
Delphi 5 Enterprise
 
#5

Re: Auf andere Aktion warten

  Alt 5. Nov 2003, 15:07
*del* hat jetzt keine Meldung gebracht, erst wenn ich beim schliessen "ModalResult:=1;" zurückgebe kommt eine Zugriffsverletzung.
  Mit Zitat antworten Zitat
Minz

Registriert seit: 19. Dez 2002
476 Beiträge
 
#6

Re: Auf andere Aktion warten

  Alt 5. Nov 2003, 15:10
Jo du musst das aus der Projektunit entfernen.

Dort wird das Fenster nämlich beim Programmstart erstellt, nur nicht angezeigt.

Unser Programmschnipsel will dieses Fenster dann nochmal erstellen.

Gruß Minz
  Mit Zitat antworten Zitat
Praktikant

Registriert seit: 24. Sep 2003
131 Beiträge
 
Delphi 5 Enterprise
 
#7

Re: Auf andere Aktion warten

  Alt 5. Nov 2003, 15:23
im Eifer des Gefechts habe ich das falsche Formular erzeugen wollen, der 2. Fehler war, dass ich be formclose noch den Free Befehl drin hatte, das verursachte die Zugriffsverletzung.

Thx vielmals @minz
  Mit Zitat antworten Zitat
Antwort Antwort


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 08:59 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