AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Timer1 soll ne Usereingabe sein

Ein Thema von manakinn · begonnen am 24. Jun 2005 · letzter Beitrag vom 24. Jun 2005
Antwort Antwort
Seite 1 von 2  1 2      
manakinn

Registriert seit: 15. Jun 2005
55 Beiträge
 
#1

Timer1 soll ne Usereingabe sein

  Alt 24. Jun 2005, 14:25
Hi,

ich versuche den Timer1 so zu machen, das der User einfach ne Zahl ins Edit Feld eingibt und dann is der Timer hat so und so viele sekunden.

Leider bekomm ich da immer einen fehler, so hab ich es zZ:

Delphi-Quellcode:
var se, time : String;
time:= StrToInt(Edit1.Text);
Randomize;
timer1.interval:=Random(time)+(60000); // Die 60000 sind das 'mindeste'

Aber leider bekomm ich diesen Fehler: [Fehler] Unit1.pas(38): Inkompatible Typen: 'String' und 'Integer'

Soweit ich weiß, kann man immer nur eine "var art" eingeben, also muss man die anderen umwandelt, also mache ich den String zu Integer (ganze zahlen, oder?) Aber was mache ich nun falsch ?

Achja, die var se is nur Edit2 und wird im Label1 angezeigt, also nix wichtiges
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#2

Re: Timer1 soll ne Usereingabe sein

  Alt 24. Jun 2005, 14:27
Delphi-Quellcode:
var
 // se: String;
  time: Integer;
begin
  time:= StrToInt(Edit1.Text);
 // Randomize; // Das bitte ins OnCreate.
  timer1.interval:=Random(time)+(60000); // Die 60000 sind das 'mindeste'
end;
  Mit Zitat antworten Zitat
Phistev
(Gast)

n/a Beiträge
 
#3

Re: Timer1 soll ne Usereingabe sein

  Alt 24. Jun 2005, 14:27
Delphi-Quellcode:
var se: String;
var time: integer;
time:= StrToInt(Edit1.Text);
Randomize;
timer1.interval:=Random(time)+(60000); // Die 60000 sind das 'mindeste'
  Mit Zitat antworten Zitat
manakinn

Registriert seit: 15. Jun 2005
55 Beiträge
 
#4

Re: Timer1 soll ne Usereingabe sein

  Alt 24. Jun 2005, 14:38
Danke für die schnelle Hilfe,
wusste gar nicht das man zweimal var beim buttonklick oder so benutzen darf,
dachte immer nur einmal, naja, danke für die hilfe
bin nun schlauer
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#5

Re: Timer1 soll ne Usereingabe sein

  Alt 24. Jun 2005, 14:42
Zitat von manakinn:
Danke für die schnelle Hilfe,
wusste gar nicht das man zweimal var beim buttonklick oder so benutzen darf,
dachte immer nur einmal, naja, danke für die hilfe
bin nun schlauer
Du kannst auch 10x var schreiben, aber ich denke, dass das ziemlich unübersichtlich ist . Deswegen schreibe ich es nur einmal.
  Mit Zitat antworten Zitat
Benutzerbild von Bowler
Bowler

Registriert seit: 8. Sep 2003
Ort: Bochum
148 Beiträge
 
Delphi XE7 Enterprise
 
#6

Re: Timer1 soll ne Usereingabe sein

  Alt 24. Jun 2005, 14:46
Du kannst in dem var-Abschnitt (1x var reicht) soviele Variablen deklarieren, wie du möchtest. Du musst nur die unterschiedlichen Typen mit einem Semikolen trennen.

Delphi-Quellcode:
procedure irgendwas;
var
  i1,i2,i3:integer;
  s1,s2,s3:string;
  i4:integer;
begin
...
end;
Christian Rüsken
  Mit Zitat antworten Zitat
manakinn

Registriert seit: 15. Jun 2005
55 Beiträge
 
#7

Re: Timer1 soll ne Usereingabe sein

  Alt 24. Jun 2005, 15:04
Ich möchte, das die Eingabe in sekunden ist,
jetzt muss der benutzer ja noch alles in milli sekunden eingeben.

Müsste das ungefähr so aussehen:

timer1.interval:=Random(time)*1000+(60000); ?

Wenn der Benutzer zum beispiel 6 eingibt, so wird die 6 mit 1000 multipliziert, das wären also 6000ms(6sekunden), oder ?
  Mit Zitat antworten Zitat
Phistev
(Gast)

n/a Beiträge
 
#8

Re: Timer1 soll ne Usereingabe sein

  Alt 24. Jun 2005, 15:07
Nicht ganz. Random liefert eine "zufällige" Zahl zwischen 0 und Time zurück, die dann mit 1000 multipliziert wird.
  Mit Zitat antworten Zitat
Benutzerbild von Bowler
Bowler

Registriert seit: 8. Sep 2003
Ort: Bochum
148 Beiträge
 
Delphi XE7 Enterprise
 
#9

Re: Timer1 soll ne Usereingabe sein

  Alt 24. Jun 2005, 15:11
Ich verstehe Deine Berechnung nicht ganz.
Wenn der User Sekunden angibt, dann nimmst du den Wert und multiplizierst ihn mit 1000 um von den eingegebenen Sekunden auf die Millisek. zu kommen, die der Timer benötigt. Das random() kannste weglassen.
Christian Rüsken
  Mit Zitat antworten Zitat
manakinn

Registriert seit: 15. Jun 2005
55 Beiträge
 
#10

Re: Timer1 soll ne Usereingabe sein

  Alt 24. Jun 2005, 15:13
Gibts ne andere Möglichkeit das der User das in Sekunden eingeben kann ?
Könnte man auch

time:= StrToInt(Edit1.Text)*1000;

machen ?
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:08 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