String and Integer

I am very new to delphi, and I am kinda confused abotu this...below is my code.

procedure TForm1.Button1Click(Sender: TObject);
var
i: integer;
s: string;
begin
button2.Enabled := true;
for i := 0 to 999999 do
begin
s := edit1.text;
s := s + 1;
edit1.text := s;
sleep(500);
end;
end;

end.


and I get an error about converting strings and crap like that, can some one fix this code to get it to work. Thanks
BrianG14Asked:
Who is Participating?
 
IndefreiConnect With a Mentor Commented:
Try to change to this

s: Integer; // see here
begin
                   button2.Enabled := true;
                   for i := 0 to 999999 do
                   begin
                   s := StrToInt(edit1.text); // Hopefully Text is an Integer !
                   s := s + 1;
                   edit1.text := IntToStr(s);
Regards
Indi
0
 
IndefreiCommented:
Ps.
Sleep(500)
Sounds, as if you should use a Timer instead
0
 
BrianG14Author Commented:
what happens if the text is not a int...and it tries to convert a string to a int and its really a string...?
0
Cloud Class® Course: Amazon Web Services - Basic

Are you thinking about creating an Amazon Web Services account for your business? Not sure where to start? In this course you’ll get an overview of the history of AWS and take a tour of their user interface.

 
IndefreiCommented:
Well,
I think then you get an unpredictable Number
so, you better take care, that the input is a number
0
 
jan_ytCommented:
You can try this. Think you want a "counter"? Not '1111.....'?

procedure TForm1.click(Sender: TObject);
var
{Changed this to longint }
 i : longint;
 s: string;

begin
 { Just to be sure it don't have a default text like "edit1.text" }
 edit1.text := '0';

for i := 0 to 999999 do
begin
 s := edit1.text;
{ Convert the text to an integer, add 1 and convert back to string }
 s := inttostr(strtoint (s) + 1);
 edit1.text := s;
{ If you want to see your counter you should use a refresh }
 form1.Refresh;
 sleep(500);
end;
0
 
BrianG14Author Commented:
is there any way to get the current x, y of the mouse and is there any way to change the x, y of the mouse. Thanks!
0
 
frangers99Commented:
What indi said is correct, but i'll try and make this clearer for you.

Edit box fields only accept strings. As you probably know strings are words etc. If you want to work with integers you need to convert them into a integer ie.

var
number:integer;

number:=strtoint(edit1.text);

then to convert the number back to an editbox after you have played around with it. do...

edit1.text:= inttostr (number);

hope this will help you.

Andrew
0
 
IndefreiCommented:
Yes, BrianG14
there are ways to get the current x, y of the mouse and there is a way to change the x,y of the mouse
but what do you expect for just poor 5 pts
Indi
0
 
BrianG14Author Commented:
well, I have 200 points...could those change your mind...if I get a good anwser maybe you could get them :D
0
 
frangers99Commented:
why don't you give your five points to somebody and then open the xy as a new question.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.