Használd ezt a kis szösszenetet:
IsNumeric(const string[])
{
for (new i = 0, j = strlen(string); i < j; i++)
{
if (string > \'9\' || string < \'0\') return 0;
}
return 1;
}
Azután, OnDialogResponse-nél:
if(IsNumeric(inputtext) && inputtext >= 0) // ellenõrzés, ahol megnézzük hogy a beírt szöveg szám-e, (0-9) ÉS (&&) hogy a beírt szöveg nagyobb mint nulla. Ezt a kódot viszont még szét lehet szedni darabokra további ellenõrzésekhez.
Köszi ez jó lenne,de az a baj,hogy ezek után is stringnek érzékeli az inputtextet.
error 033: array must be indexed (variable \"inputtext\")
if(IsNumeric(inputtext) && inputtext > 0)
esetleg így?
Köszi ez jó lenne,de az a baj,hogy ezek után is stringnek érzékeli az inputtextet.
error 033: array must be indexed (variable \"inputtext\")
Mert az input text az \"string\" pontosabban arra a célra van létrehozva az IsNuneric függvény csak ellenõrzi hogy a karakterlánc számból áll-e.
Viszont te, integer típusként akarod felhasználni az inputtext-et ezért jelzi a fent idézett hibát.
Át kell alakítanod egy változóba az inputtext-et mégpedig így:
new value = strval(inputtext);
Majd a value nevezetû változó fogja tárolni a számot és ezt használhatod fel.
if(value == 12)