Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi progressform, mehrere funktionen parallel (https://www.delphipraxis.net/94952-progressform-mehrere-funktionen-parallel.html)

stephan007 2. Jul 2007 09:55

Re: progressform, mehrere funktionen parallel
 
hm, nach durchsicht des tutorials frage ich mich irgendwie, ob der aufwand nicht viel zu viel ist für mein problem bzw. ich hab das problem, welche funktionalität packe ich in die execute??

hab nämlich zwei funktionen:
*) Progress (value: Integer);
*) AddMessage (aMessage: String);

diese werden mit ihren parametern jeweils aus einem beliebigen programm aufgerufen. d.h. ich weiß ja vorher nicht, welche der funktionen und vorallem mit welchen parametern ich aufrufen muss. daher kann ich das ja nicht in die execute des threads packen.
oder übersehe ich da was?

nach dem tipp eines kollegen bin ich gerade am überlegen, ob ich das ganze nicht mit messages lösen sollte.

mfg,
stephan.

stephan007 3. Jul 2007 13:30

Re: progressform, mehrere funktionen parallel
 
hat irgendwer vielleicht bitte mittlerweile eine idee, wie das funktionieren könnte? bin trotz tutorial nicht wirklich weitergekommen.

hab folgendes:

Delphi-Quellcode:
procedure TProgressForm.AddMessage(aMessage: String);
begin
  // add the message in here
end;

procedure TProgressForm.Progress(ProgressValue: Integer);
begin
  // do the changes
end;
und die werden von extern z.b. mit
Delphi-Quellcode:
ProgressForm.AddMessage('Test 1');
oder
Delphi-Quellcode:
ProgressForm.Progress(10);
aufgerufen.

nun habe ich ein testformular mit buttons. klicke ich button 1 werden 100 messages eingefügt (jeweils wenn der zufallsgenerator die gewünschte zeit erwischt, damit will ich beliebige zeitspannen simulieren). klicke ich auf einen zweiten button, so wird der progressbar um 1 erhöht, solange bis er auf maximum ist. das ganze soll nun quasi parallel passieren, weil ja theoretisch ein kommando kommen kann, wenn das eine noch arbeitet und das soll dann natürlich nicht abgebrochen werden (was ohne threads passiert).

wie muss ich den thread nun genau vorsehen (bin mit dem tutorial leider nur bedingt weitergekommen!), damit die quasi parallel ablaufen. wie man an obigen code sieht, kann ich die aktion nicht in den execute schieben, weil ich ja nicht weiß, welche der beiden aufgerufen wird.

vielleicht könnte mir wer bitte die notwendigen codezeilen posten, denn ich glaube, sonst sitze ich leider noch nächstes jahr da dran :roll:

denn ich glaube, wenn ichs in codeform sehe und daran austesten kann, könnte ich das auf dem weg leichter und schneller lernen und verstehen.

oder muss ich etwa im thread die funktionen definieren und von dort aufrufen? :gruebel:

stephan.

stephan007 3. Jul 2007 14:19

Re: progressform, mehrere funktionen parallel
 
-> gelöscht, da oberhalb ergänzt (besseres verständnis) <-


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:05 Uhr.
Seite 2 von 2     12   

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