Jakiś czas temu napisałem grę flash (CS3) i kiedyś działała, ale podczas próby skompilowania tego samego pliku FLA w CS5 nie działa.
Mam dynamiczne pole tekstowe o nazwie tScore
tScore.text = Score;
Służy do zastosowania bieżącej wartości całkowitej wyniku użytkownika do pola tekstowego. Już tego nie robi. (Wydaje się pusty)
Za pomocą prostego debugowania:
tScore.text = Score.toString; // no value shown
tScore.text = String(Score); // no value shown
tScore.text = "A"; // sets the field to the value A
tScore.text = "123"; // no value shown
tScore.text = "C123"; // value "C" shown
tScore.text = "A12A"; // value "AA" shown
tScore.text = "000"; // value "000" shown
tScore.text = "01"; // value "0" shown
Wiem, że minęło dużo czasu, zanim dziwne rzeczy wydarzyły się błyskawicznie - ale - to nie ma dla mnie sensu.
Czy ktoś doświadczył pola tekstowego, które nie akceptuje cyfr?
Odpowiedzi:
6 dla odpowiedzi № 1Wygląda na to, że może to być problem z osadzaniem czcionek, zmienił się nieco między CS3 a CS5. Możesz przejść do panelu „Osadzanie czcionek” i upewnić się, że dla użytej czcionki są uwzględnione „Cyfry”.
1 dla odpowiedzi nr 2
Rozwiązałem problem zmiany właściwości Anti-alias dynamicznego tekstu do Użyj czcionek urządzenia (zamiast domyślnego „Wygładzania dla czytelności”).
Jasne, tekst wygląda brzydko, ale w moim przypadku jest akceptowalny.
0 dla odpowiedzi № 3
Nigdy wcześniej czegoś takiego nie doświadczyłem. Sugeruję użycie śladów, aby ustalić, czy pole tekstowe w ogóle istnieje i czy w ogóle coś zawiera.
Sprawdź także, czy właściwości pola tekstowego są nadal poprawne (być może CS5 go zdziwił i uczyni go statycznym lub wejściowym dla wszystkich, których znasz)