Announcement

Collapse
No announcement yet.

Threads, aber wie?

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

  • Threads, aber wie?

    Hallo,

    nachdem nun mein Problem mit den modalen Fenstern die im Hintergrund geöffnet werden offensichtlich über Threads gelöst werden kann, frage ich mich, wie man das am sinnvolsten angeht. Und wie gehe ich bei MessageBoxen vor?

  • #2
    Mhh.. falsch ausgedrückt!
    Die Frage sollte lauten: Wie starte ich einen Thread für ein Formular das ich öffnen möchte?

    oder anders: Pro Fomular einen Thread?

    Heik

    Comment


    • #3
      Hallo,

      gemäss den Win32-Regel darf nur der Thread auf ein Control/Fenster (und somit auch ein Delphi-Formular) zugreifen, der diese Instanz auch erzeugt hat. Somit wäre folgendes legal: <br>
      a) neuen Thread starten <br>
      b) in diesem Thread ein Fenster erzeugen <br>
      c) Botschaftswarteschlange für dieses Fenster im gleichen Thread auswerten

      Was beim direkten Hantieren mit den nativen Win32-API-Funktionen problemlos funktioniert, wird bei den visuellen Komponenten der VCL zum Problem. Die VCL ist an dieser Stelle generell dafür ausgelegt, nur im primären Thread der Anwendung ausgeführt zu werden. Ich würde die Idee also am Besten vergessen.

      Comment


      • #4
        Nun, wie umgehe ich dann aber das Problem, dass modale Fenster hin und wieder nicht modal gezeigt werden?

        Heik

        Comment

        Working...
        X