Autor Beitrag
bobi
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 45

Windoof XP Pro.
Delphi 2006 .NET
BeitragVerfasst: Do 21.06.07 15:45 
Hi, ich möchte gerne das in meinen Programm immer eine gewisse Verzögerung zwischen den Zeitpunkten besteht wo etwas in das Label geschrieben wird, nur habe ich das Problem das er immer alle Sleeps abwartet und dann alles auf einmal ladet.

Gibt es da noch eine andere Möglichkeit?



ausblenden volle Höhe Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
procedure TWinForm_Start.TWinForm_Start_start;
begin
  System.Threading.Thread.Sleep(9000);
end;

procedure TWinForm_Start.TWinForm_Start_Load(sender: System.Object; e: System.EventArgs);
begin
    If System.IO.File.Exists('cfg\login.jpscfg'then
  begin
    Label1.Text := ('Status: login.jpscfg wurde geladen');
    TWinForm_Start_Start;
  end
  else
  System.IO.File.CreateText('cfg\login.jpscfg');
  Begin
  If System.IO.File.Exists('cfg\db.jpscfg'then
  begin
    Label1.Text := ('Status: db.jpscfg wurde geladen');
    TWinForm_Start_Start;
  end
  else
  System.IO.File.CreateText('cfg\db.jpscfg');
  End;

  If System.IO.File.Exists('cfg\display.jpscfg'then
  begin
    Label1.Text := ('Status: display.jpscfg wurde geladen');
  end
  else
  System.IO.File.CreateText('cfg\display.jpscfg');

  If System.IO.File.Exists('cfg\startscript.jpscfg'then
  begin
    Label1.Text := ('Status: startscript.jpscfg wurde geladen');
  end
  else
  System.IO.File.CreateText('cfg\startscript.jpscfg');

  Begin
  If System.IO.File.Exists('cfg\superadmin.jpscfg'then
  begin
    Label1.Text := ('Status: superadmin.jpscfg wurde geladen');
  end
  else
  System.IO.File.CreateText('cfg\superadmin.jpscfg');
  End;
end;



MFG: bobi


Moderiert von user profile iconChristian S.: Topic aus .NET verschoben am Do 21.06.2007 um 15:48
r2c2
ontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic starofftopic star
Beiträge: 324
Erhaltene Danke: 2

Linux

BeitragVerfasst: Do 21.06.07 17:51 
Application.DoEvents() + F1 sollte helfen...

mfg

Christian

_________________
Kaum macht man's richtig, schon klappts!
bobi Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 45

Windoof XP Pro.
Delphi 2006 .NET
BeitragVerfasst: Do 21.06.07 22:08 
Habe mir das gerade mal angeschaut, aber ich muss zugeben ich weiß nicht wie ich das anwenden kann.


(Ich frage mich gerade warum mein Beitrag im C# Forum steht, wenn ich es in Delphi Forum geschrieben habe ^^)



Mit freundlichen Grüßen: bobi
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Do 21.06.07 22:18 
user profile iconbobi hat folgendes geschrieben:
(Ich frage mich gerade warum mein Beitrag im C# Forum steht, wenn ich es in Delphi Forum geschrieben habe ^^)
Hier mal die Spartenbeschreibung der .NET Sparte des DF:
Zitat:
Hier können sprachspezifische .NET-Probleme gestellt werden. .NET spezifische Themen müssen in unserem C#-Forum gestellt werden.

Dein Problem ist nicht sprachspezifisch. :-)

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
bobi Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 45

Windoof XP Pro.
Delphi 2006 .NET
BeitragVerfasst: Fr 22.06.07 10:08 
Ok, dann habe ich mich wohl mit den post in der spalte vertan und dafür entschuldige ich mich auch.

Hätte dennoch einer ein Beispiel für mich wie ich das in Delphi lösen kann?
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Fr 22.06.07 10:20 
user profile iconbobi hat folgendes geschrieben:
Hätte dennoch einer ein Beispiel für mich wie ich das in Delphi lösen kann?
Mit Application.DoEvents ;-) Wie hast Du denn bisher versucht, den Befehl anzuwenden? :-)

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
bobi Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 45

Windoof XP Pro.
Delphi 2006 .NET
BeitragVerfasst: Fr 22.06.07 10:30 
Ja, ich habe mir dann auch mal dazu die Hilfe von Borland angesehen, aber ich weiß nicht so richtig wie ich den einsetzen kann bzw muss.
r2c2
ontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic starofftopic star
Beiträge: 324
Erhaltene Danke: 2

Linux

BeitragVerfasst: Fr 22.06.07 16:23 
user profile iconbobi hat folgendes geschrieben:
Ja, ich habe mir dann auch mal dazu die Hilfe von Borland angesehen, aber ich weiß nicht so richtig wie ich den einsetzen kann bzw muss.

Fangen wir mal damit an, was diese Methode macht. Was hast du von dem verstanden, was in der Hilfe steht. Oder besser: Was konkret hast du nicht verstanden?

mfg

Christian

_________________
Kaum macht man's richtig, schon klappts!
bobi Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 45

Windoof XP Pro.
Delphi 2006 .NET
BeitragVerfasst: Mo 25.06.07 09:34 
Ich habe das so verstanden das diese Methode bewirkt, das Delphi die Prozesse nach einander abarbeitet. (denke ich ^^)


Was ich allerdings nicht verstehe ist, wie ich diesen Befehl bei mir mit in den Code einbringe!



MFG: bobi
r2c2
ontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic starofftopic star
Beiträge: 324
Erhaltene Danke: 2

Linux

BeitragVerfasst: Mo 25.06.07 15:20 
user profile iconbobi hat folgendes geschrieben:
Ich habe das so verstanden das diese Methode bewirkt, das Delphi die Prozesse nach einander abarbeitet. (denke ich ^^)

Ähm.... nö. Die angefallenen Messages werden abgearbeitet.

Mal gaaanz kurz was das heißt:
Jeder Thread(also auch dein Programm) hat ne MessageQueue(sowas wie n Briefkasten). Wenn du irgendwas machst(Maus bewegen, Klicken, Tasten drücken, etc.) merkt das Windows und sendet ne Message an den aktiven Prozess(dein Prog). Wenn dein Prog arbeitet, guckt es normalerweise nicht in den Briefkasten, ob es etwas machen soll(z.B: das Fenster neu zeichnen, damit der User die Änderungen sieht). Mit DoEvents(bzw. unter Win32 ProcessMessages) wird nochmal extra in den Briefkasten geguckt, ob da vllt was drin is und, wenn ja wird zuerst das gemacht, was in den Briefen steht(neu zeichnen!)...

mfg

Christian

_________________
Kaum macht man's richtig, schon klappts!