nach ShowModal() Fenster im Hintergrund



  • Hallo !

    Seit einiger Zeit und auch nur manchmal, befindet sich das Fenster, dass ich mittels ShowModal() aufrufe im Hintergrund.
    Das ist besonders ärgerlich, da das Programm dann nicht mehr bedienbar ist und der Prozess abgeschossen werden muss.

    Man bekommt es wieder nach vorn, in dem man mit <ctrl><alt><entf> den Task Manager aufruft, so tut als ob man den Process abschießen möchte, oder auf "wechseln zu" drückt.

    Naja, das ist natürlich nicht für die Praxis geeignet, hilft aber erst einmal, wenn sich ein Neustart aus betriebstechnischer Sicht verbietet.

    Nun dachte ich BringToFront() könnte das Problem lösen.
    Tut es aber nicht.
    Nun brobiere ist es mit "fsStayOnTop" statt "fsNormal".

    Nur, das kann doch nicht der Sinn der Sache sein, dass ich jedem Modalen Fenster sagen muss, dass es wirklich in den Vordergrund gehört ?

    Ich benutze noch BCB6 unter WXP Prof.



  • hast du vielleicht beim aufrufenden Fenster fsStayOnTop gesetzt? sonst kan das eigentlich net sein.



  • Nein, habe ich nicht: Formstyle=fsNormal

    Meine Befürchtungen gehen nun dahin, dass in der Zeit zwischen ShowModal() und der eigentlichen Darstellung etwas passiert, was die Darstellung verhindert bzw. verzögert.
    Da jedoch meine Anwendung die einzige, die auf dem PC läuft, abgesehen von den diversen Windowsprozessen, kann mir eigentlich niemand anderes dazwischenfunken.

    Schlimm ist ja auch, dass der Zeitpunkt dieses Ärgernisses nicht reproduzierbar ist. 😕



  • Hallo.

    Schon mal versucht in das OnShow-Ereignis der Modalform

    Form->SetFocus();
    

    zu schreiben?

    Gruss



  • Hab' ich noch nicht, ist einen Versuch wert.
    Danke


Anmelden zum Antworten