Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Cross-Platform-Entwicklung (https://www.delphipraxis.net/91-cross-platform-entwicklung/)
-   -   Wait dialog oder sanduhr fuer Android/IOS (https://www.delphipraxis.net/188471-wait-dialog-oder-sanduhr-fuer-android-ios.html)

thomas1765 7. Mär 2016 15:10

Wait dialog oder sanduhr fuer Android/IOS
 
Hallo,

ich bin auf der Suche nach einer Sanduhr oder zumindest einen Wartedialog für
Android/IOS Apps.

Gibt es da irdend eine Library oder hat jemand einen Tipp für mich wie man das
schnell programmieren kann?

Gruß
Thomas

Darlo 7. Mär 2016 15:15

AW: Wait dialog oder sanduhr fuer Android/IOS
 
Das Ding heißt TAniIndicator und den musst Du in einem eigenen Thread laufen lassen.

Thomas Horstmann 7. Mär 2016 15:30

AW: Wait dialog oder sanduhr fuer Android/IOS
 
Liste der Anhänge anzeigen (Anzahl: 2)
Ich öffnen eine neue Form, in der ein Sanduhr-Image liegt. Das hat auch den Vorteil, das die Tasten und Toolbars des darunter liegenden Fensters nicht aktiv sind.

Delphi-Quellcode:
...
gWait : TWaitForm ;
...

// *** Start BeginWait *********************************************************
// *****************************************************************************
procedure BeginWait ;
var
iAppService : IFMXApplicationService ;
begin
{ Fehler: Bereits vorhanden }
if gWait <> nil then Exit ;

{ Zur Sicherheit mit try }
  try
  { Anlegen }
  gWait := TWaitForm.Create(Application) ;
  { Anzeigen }
  gWait.Visible := True ;
  gWait.BringToFront ;
  { Meldungen verarbeiten !!! Sonst wird das Fenster nicht angezeigt !!! }
  if TPlatformServices.Current.SupportsPlatformService(IFMXApplicationService,iAppService) then
    iAppService.HandleMessage ;
  except
  end ; // try
end ;
// *** Ende BeginWait **********************************************************
// *****************************************************************************


// *** Start EndWait ***********************************************************
// *****************************************************************************
procedure EndWait ;
begin
{ Fehler: Nicht göffnet }
if gWait = nil then Exit ;

{ Zur Sicherheit mit try }
  try
  { Löschen }
  gWait.DisposeOf ;
  except
  end ; // try

{ Zurücksetzen }
gWait := nil ;
end ;
// *** Ende EndWait ************************************************************
// *****************************************************************************

Sir Rufo 7. Mär 2016 15:50

AW: Wait dialog oder sanduhr fuer Android/IOS
 
Zitat:

Zitat von Darlo (Beitrag 1332302)
Das Ding heißt TAniIndicator und den musst Du in einem eigenen Thread laufen lassen.

Doch wohl eher anders herum :stupid:

Den ausführenden Code packt man in einen eigenen Thread

Darlo 7. Mär 2016 16:17

AW: Wait dialog oder sanduhr fuer Android/IOS
 
Zitat:

Zitat von Sir Rufo (Beitrag 1332306)
Zitat:

Zitat von Darlo (Beitrag 1332302)
Das Ding heißt TAniIndicator und den musst Du in einem eigenen Thread laufen lassen.

Doch wohl eher anders herum :stupid:

Den ausführenden Code packt man in einen eigenen Thread

Jo, so wird dann ein Schuh draus....

Delphi-Quellcode:
  AniIndicator1.Enabled := true;
  Application.ProcessMessages;

  TThread.CreateAnonymousThread(procedure ()
    begin
      try
        ergebnisse := frmWebservice.getPkx(id.ToInteger,geb,beginn,ablauf, port);

      finally
        TThread.Synchronize (TThread.CurrentThread,
          procedure ()
          begin
            createProduktuebersicht(ergebnisse);
            AniIndicator1.Enabled := false;
          end);
      end;
  end).Start;

Mavarik 7. Mär 2016 17:41

AW: Wait dialog oder sanduhr fuer Android/IOS
 
Zitat:

Zitat von Darlo (Beitrag 1332318)
Delphi-Quellcode:
  AniIndicator1.Enabled := true;
  Application.ProcessMessages;

Delphi-Quellcode:
  Application.ProcessMessages;
Warum?

Darlo 7. Mär 2016 18:09

AW: Wait dialog oder sanduhr fuer Android/IOS
 
In dem Context von meinem Programm will ich sichergehen dass der GUI-Aufbau vorher aktualisiert wird bevor der Thread begonnen wird.

bra 8. Mär 2016 10:08

AW: Wait dialog oder sanduhr fuer Android/IOS
 
Application.ProcessMessages kann unter Android/iOS tödlich sein. Nicht verwenden, wenn nicht absolut notwendig (wir haben das auch leider noch an einer Stelle drin, wo es nicht anders ging).

thomas1765 9. Mär 2016 10:52

AW: Wait dialog oder sanduhr fuer Android/IOS
 
Danke für die Antworten.

Das mit TAniIndicator im Thread funktioniert prima unter Android, nur mit meinem IPhone nicht.

Gibt es beim Threading unter IOS was spezielles zu beachten?

Gruß
Thomas

Darlo 9. Mär 2016 12:36

AW: Wait dialog oder sanduhr fuer Android/IOS
 
Bei mir läuft es unter ios. Ggf. ein Application.ProcessMessage rein :duck:


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:26 Uhr.
Seite 1 von 2  1 2      

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