AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Ich brauch eine Mischung zwischen Show und ShowModal
Thema durchsuchen
Ansicht
Themen-Optionen

Ich brauch eine Mischung zwischen Show und ShowModal

Ein Thema von gsh · begonnen am 23. Okt 2006 · letzter Beitrag vom 19. Aug 2009
Antwort Antwort
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.277 Beiträge
 
Delphi 10.4 Sydney
 
#1

Re: Ich brauch eine Mischung zwischen Show und ShowModal

  Alt 19. Aug 2009, 08:11
Hallo,

die Variante mit dem Show hat den Nachteil,
dass mit dem darunterliegenden Form auch noch gearbeitet werden kann,
Hide versteckt, OK, sieht aber manchmal doof aus
Deswegen mein Ansatz mit dem "semimodal".

Nochmal der Code.

Delphi-Quellcode:
function TForm_PEP__Main.LoadData: Boolean;
var
  FrmStatus : TForm_Status;
  WindowList : Pointer;
begin
  Result:= False;

  try
    FrmStatus:= TForm_Status.Create(NIL);

    try
     { to make form "semimodal" }
      WindowList:= DisableTaskWindows(frmStatus.Handle);
      try
        // Formular anzeigen
        FrmStatus.Show;

        // Schleifenverarbeitung
        Repeat
          FrmStatus.Caption := 'Lade Daten';
          FrmStatus.Label1.Caption:= 'Daten 1';
          // Nachrichtenverarbeitung zulassen
          Application.ProcessMessages;
       // hier passiert das wichtige Daten 1

          FrmStatus.Label1.Caption:= 'Daten 2';
          // Nachrichtenverarbeitung zulassen
          Application.ProcessMessages;
       // hier passiert das wichtige Daten 2

          break;
        // bis Verarbeitung fertig oder Benutzerabbruch
        until False;
      finally
        // Semi-Modalität aufheben
        EnableTaskWindows(WindowList);
        // Fenster verstecken
        FrmStatus.Hide;
      end;
    finally
      // Fenster wieder freigeben
      FrmStatus.Free;
    end;
  except
  end;
end; { LoadData }
Definiere eine Form (TForm_Status).
Packe, wenn du willst ein Label drauf (Label 1).

Und dann in deinem Form (hier TForm_PEP__Main), den obigen Code.


Heiko
Heiko
  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 13:47 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz