Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Problem mit Label-Caption (https://www.delphipraxis.net/159240-problem-mit-label-caption.html)

Saradmin 19. Mär 2011 13:42

Problem mit Label-Caption
 
Hallo Leute,

Ich stehe wieder vor einem Problem:

Ich möchte in meinen Spiel die 'Spiel speichern'-Funktion einbauen, was sicher auch ganz nützlich wäre. :-D

Dazu habe ich mir ein extra Formular mit einer Gauge, einem Label und einem Timer erstellt.
Dabei soll der Speicher-Fortschritt nicht nur in der Gauge, sondern auch indirekt in Form von Punkten im Label erscheinen.

Z.B.: 'Das Spielprofil wird gespeichert...'

Für jeden Fortschritt im Speichern soll ein weiterer Punkt hinzukommen.
Klingt einfach, aber Delphi scheint mir dabei einen Strich durch die Rechnung machen zu wollen. :(

Denn immer, wenn eigentlich ein Punkt hinzukommen sollte, passiert überhaupt nichts, es steht nur dieser blöde vorher definierte Text da: 'Das Spielprofil wird gespeichert', und zwar ohne jeden Punkt...(bis auf die i-Punkte)

Hier der komplette Code für das Formular:
Delphi-Quellcode:
unit Unit4;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Gauges, StdCtrls, IniFiles, ExtCtrls;

type
  TForm4 = class(TForm)
    Gauge1: TGauge;
    start: TTimer;
    Label1: TLabel;
    procedure save;
    procedure FormShow(Sender: TObject);
    procedure startTimer(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form4: TForm4;

implementation

uses Unit1, Unit2, Unit3;

{$R *.dfm}

procedure TForm4.save;
var ini : TIniFile ;
var x , y : integer ;
begin
  ini := TIniFile.Create(ExtractFilePath(ParamStr(0))+'userdata.ini');
  x := 1;
  y := 1;
  ini.WriteInteger('General','autoask',Unit1.stndrd_autoask);
  while y < 8 do
  begin
    while x < 11 do
    begin
      Gauge1.Progress := ( ( y - 1 ) * 10 ) + x;
      ini.WriteInteger('Field('+IntToStr(x)+'|'+IntToStr(y)+')','type',Unit1.plantType[x,y]);
      ini.WriteInteger('Field('+IntToStr(x)+'|'+IntToStr(y)+')','start',Unit1.UnixStart[x,y]);
      ini.WriteInteger('Field('+IntToStr(x)+'|'+IntToStr(y)+')','finish',Unit1.UnixFinished[x,y]);
      {if x mod 5 = 0 then
      begin}
      Label1.Caption := Label1.Caption + '.';
      //end;
      Inc(x);
    end;
    Inc(y);
    x := 1;
  end;
  ini.Free;
  Gauge1.Progress := 1;
  close
end;

procedure TForm4.FormShow(Sender: TObject);
begin
  start.Enabled := True;
end;

procedure TForm4.startTimer(Sender: TObject);
begin
  save;
end;

end.
Ich hoffe, ihr könnt mir helfen, und ich bedanke mich im Vorraus.

mkinzler 19. Mär 2011 13:48

AW: Problem mit Label-Caption
 
Versuch es mal damit, das Label abzudaten, denn der Text ändert sich zawr, dass sieht man aber nicht.
Btw. Rücke deinen Code mal richtig ein, so dass man sieht welches end zu welchem begin usw. gehört

Saradmin 19. Mär 2011 13:55

AW: Problem mit Label-Caption
 
Zitat:

Zitat von mkinzler (Beitrag 1089623)
Versuch es mal damit, das Label abzudaten, denn der Text ändert sich zawr, dass sieht man aber nicht.
Btw. Rücke deinen Code mal richtig ein, so dass man sieht welches end zu welchem begin usw. gehört

was genau meinst du mit 'abdaten'? :gruebel:

alfold 19. Mär 2011 13:59

AW: Problem mit Label-Caption
 
evtl.
Delphi-Quellcode:
Label1.Caption := Label1.Caption + '.';

Label1.Refresh;//oder
Application.ProcessMessages

mkinzler 19. Mär 2011 13:59

AW: Problem mit Label-Caption
 
Dafür zu sorgen, dass es neu gezeichnet wird. Da sich auch die Gauge änder ambesten das Formular:
Delphi-Quellcode:
Update;

Saradmin 19. Mär 2011 14:09

AW: Problem mit Label-Caption
 
Bis auf
Delphi-Quellcode:
Applicacion.ProcessMessages;
hat bei mir alles geklappt, da hat das Gauge aus irgendeinem Grund immer wieder bei Null angefangen *schulter zuck*
Bedankt hab ich mich schon im Vorraus, also... :mrgreen: Danke Nochmals^^


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:15 Uhr.

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