Announcement

Collapse
No announcement yet.

Programmablauf unterbrechen, zwecks Eingabe von Daten

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Programmablauf unterbrechen, zwecks Eingabe von Daten

    Ich will in meinem Programm den Programmablauf unterbrechen, damit der Benutzer Daten, die bis zu diesem Zeitpunkt fehlen, nachträglich eingeben kann.
    Dazu zeige ich in der Prozedur ein Fenster an. Nun müßte Delphi warten, bis der Benutzer fertig mit der Eingabe ist und dann an der selben Stelle weitermachen.
    Tut es aber nicht, sondern rennt weiter und will mit den noch nicht vorhandenen Daten arbeiten -> Problem.
    Wie kann ich Delphi zum Warten zwingen?
    <br>
    Source<br>
    <br>
    ..vorher..<br>
    if daten=nil then Form2.show<br>
    <br>
    jetzt brauch ich die Verzögerung, bis die Form wieder zu gemacht wird<br>
    <br>
    ..weiter..<br>

    Danke!

  • #2
    Hallo,

    dieses Problem lässt sich sehr einfach lösen: Anstelle das Formular mit <b>Show</b> nur anzuzeigen, muss das Formular über <b>ShowModal</b> als modales Formular aufgerufen werden. Das Programm "wartet" dann solange, bis der Anwender das Formular wieder geschlossen hat.

    Eine Erklärung der Zusammenhänge sowie ein Beispiel ist in der Delphi-Hilfe unter <i>TCustomForm.ShowModal</i> zu finden.
    &#10

    Comment


    • #3
      Das ist zum Glück leicht zu erreichen:

      Einfach die Methode ShowModal anstatt Show verwenden! Näheres dazu in der Delphi-Hilfe

      Comment


      • #4
        Unglaublich!

        Jetzt ist mir Hr. Kosch in der Beantwortung der Frage tatsächlich um 2 Minuten zuvorgekommen

        Comment


        • #5
          Vielen, vielen Dank!

          Wie immer war die Lösung so trivial, das mann selber nicht drauf kommt, tja.

          Comment

          Working...
          X