Autor Beitrag
Abu36
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 59



BeitragVerfasst: Sa 25.03.06 12:33 
Schönen guten morgen


also, mein problem is das:

in form3 wird im panel eine gestoppte zeit ausgegeben.
den inhalt des panel, also die zeitangabe, möchte ich nun in eine variable schreiben.
im folgenden soll mit hilfe dieser zeitangabe in form4 eine highscoreliste erstellt werden, in einem stringgrid.

ich weiss nun nicht, ob ich den panelinhalt (zeitangabe) von string in integer mache und der variable zuweise.
also die variable steht bei public, sie soll dann ja in form4 weiterverwendet werden.

desweiteren frag ich mich, wie ich sie dann in die highscore liste (stringgrid) einfügen kann?????
Marc.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1876
Erhaltene Danke: 129

Win 8.1, Xubuntu 15.10

BeitragVerfasst: Sa 25.03.06 12:45 
warum eine extra variable definieren?
ausblenden Delphi-Quelltext
1:
2:
3:
begin
 Form4.StringGrid1.Cells[2,2] := Form3.panel1.Caption;
end;

ansonsten:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
var
  Form3: TForm3;
  MeineVariable: String;

implementation
  uses unit4;

{$R *.dfm}

procedure TForm3.Button1Click(Sender: TObject);
begin
 MeineVariable := panel1.Caption;
 Form4.StringGrid1.Cells[2,2] := MeineVariable;
end;


von string zu int und umgekehrt kannst du dir sparen, denn stringgrid.cells[x,y] verlangt zwar einen string, panel.caption ist bereits einer ;)


Zuletzt bearbeitet von Marc. am Sa 25.03.06 12:48, insgesamt 3-mal bearbeitet
Danniolo
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 693



BeitragVerfasst: Sa 25.03.06 12:45 
In welchem Format leigt diese Zeitangabe denn vor?

// Edit: Ma wieder zu lahm, aber NoTVerYEvilPzYchO Methode sollte auch funzen :roll:
Abu36 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 59



BeitragVerfasst: Sa 25.03.06 15:11 
das stoppen der zeit hab ich über einen timer gemacht

ausblenden Delphi-Quelltext
1:
panel2.Caption:=timetostr(aktuelle_zeit);					


und die variable aktuelle_zeit steht auf aktuelle_zeit:real= 0
Marc.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1876
Erhaltene Danke: 129

Win 8.1, Xubuntu 15.10

BeitragVerfasst: Sa 25.03.06 15:19 
Zitat:
aktuelle_zeit:real= 0


du hast aktuelle_zeit als konstante definiert? :lol:
fidionael
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 232

Win XP SP2, Ubuntu 6.06
Delphi 7 PE, Delphi 3 Prof
BeitragVerfasst: Sa 25.03.06 15:20 
user profile iconAbu36 hat folgendes geschrieben:
das stoppen der zeit hab ich über einen timer gemacht

ausblenden Delphi-Quelltext
1:
panel2.Caption:=timetostr(aktuelle_zeit);					


und die variable aktuelle_zeit steht auf aktuelle_zeit:real= 0


Das versteh ich nicht so richtig :P Du hast ernsthaft eine Timer-Komponente laufen, die nichts tut, außer die Zeit zu erhöhen?!
Nimm doch vorher die Zeit und nachher und bilde die Differenz...

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
var t: TTime;
begin
 t:=time;
 
 // Ganz viel Quelltext *g*

 Aktuelle_Zeit:=time-t;
end;


Außerdem würde ich für eine Highscore nicht mit TimeToStr, sondern mit FloatToStr und einer Umrechnung arbeiten. Wenn du also z. B. deine Zeit in Sekunden haben willst:

ausblenden Delphi-Quelltext
1:
 Aktuelle_Zeit:=time- t * 24 * 60 * 60;					


Hoffe das hilft dir. Mfg

//Edit:
Ich gehe mal einfach davon aus das du Aktuelle_Zeit nich als Konstante sondern als Real deklariert hast und das = 0 als Initialwert gemeint war :-P
Abu36 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 59



BeitragVerfasst: Sa 25.03.06 15:30 
schön, wenn ichs nun aber so lassen will, wie kann ichs denn weiter machen??