Skocz do zawartości


Zdjęcie

[Flash] pytanie o funkcję i nie tylko


  • Zamknięty Temat jest zamknięty
9 odpowiedzi w tym temacie

#1 Speed222

Speed222

    Początkujący

  • 78 postów

Napisano 14 04 2008 - 18:58

witam!! mam takie pytanko: jak ma wyglądać funkcja która oblicza mi we Flashu funkcja która pobiera mi dane z 2 pól typu 'input text' i oblicza pierwiastek kawadratowy z z sumy ich kwadratów (czyli chce obliczyć c, a wiec c=pierwiastek z a^+b^ czyli twierdzenie pitagorasa). wynik ma natomiast znaleźć się w tzrecim polu typu 'input text'! bardzi prosze o pomoc! to ważne! ;] ;] ;]



Załączony plik  pit.bmp   189,69 KB   231 Ilość pobrań




ma to wyglądać tak jak w załączniku! pomóżcie!

  • 0

#2 trym

trym

    Początkujący

  • 11 postów

Napisano 15 04 2008 - 09:35

Robisz tak:
Wstawiasz na scenę trzy pola tekstowe (z komponentów) i nadajesz im nazwy "a_txt", "b_txt" oraz "c_txt".
Dodajesz komponent button i dajesz mu nazwę "licz_btn".
Następnie w pierwszej klatce osobnej warstwy (wypada stworzyć osobną warstwę dla kodu) wklejasz ten kod:

this.licz_btn.onRelease = function(){

var a:Number = 0;
var b:Number = 0;
var c:Number = 0;

a = a_txt.text;
b = b_txt.text;

c = Math.sqrt( a*a + b*b );

}

Po kliknięciu przycisku flash przeliczy Ci równanie.

EDIT: Cholerne emotki.

  • 0

#3 Speed222

Speed222

    Początkujący

  • 78 postów

Napisano 15 04 2008 - 16:10

ok dzięx mistrzu! a mam jeszcze takie pytanko: czy musi być na końcu to text (czyli czy usi być a=a_txt.text)?? a jeśli tak to dlaczego!!



co oznacza to 'Math'?? bo muszę wiedzieć takie rzeczy gdyż będę musiał to omówić! Ale można zatapić to ' a_txt ' inną nazwą??
  • 0

#4 trym

trym

    Początkujący

  • 11 postów

Napisano 16 04 2008 - 10:33

Już Ci odpowiadam.

1.
To "text" we frazie "a_txt.text" to właściwość instancji obiektu TextArea.
Mówiąc językiem ludzkim (bo zakładam, że nie znasz do końca obiektowego programowania) masz coś takiego jak pole tekstowe, ono ma kilka właściwości jak na przykład ramka (border), szerokość (_width), wysokość (_height) itd. Jak chcesz zmienić jakąś właściwość pola tekstowego to piszesz w taki sposób jak Ci pokazałem, np:
a_txt._width = 500;
ustawi Ci szerokość pola tekstowego "a_txt" na 500 px. Identycznie jest z właściwośćią text. Przechowuje ona zawartość pola tekstowego. Jak więc coś przypiszesz do tej właściwości (a_txt.text = "literki") to zostanie to w tym polu wyświetlone. W taki sam sposób możesz pobierać właściwości z pola tekstowego (np: zmienna = a_txt.text).

2.
Math to klasa do obliczeń matematycznych. Wywołując Math.sqrt wywołujesz metodę sqrt (pierwiastek kwadratowy).

3.
Nazwy możesz zmieniać jak chcesz. Tylko musisz pamiętać, że jak zmienisz nazwę komponentu na scenie to musisz zmienić ją w kodzie. Przyrostek "_txt" to nie jest rzecz konieczna, jednak polecana. W ten sposób patrząc na kod wiesz z czym masz do czynienia (np. dla movie clipów daje się przyrostek "_mc").

Jeśli chcesz więcej poczytać np. o klasie Math to skorzystaj z pomocy flasha (najedź na słowo Math w kodzie i wciśnij F1). Niestety wszystko jest po angielsku, po polsku raczej ciężko o takie rzeczy, chyba, że jakiś podręcznik.
  • 0

#5 Speed222

Speed222

    Początkujący

  • 78 postów

Napisano 16 04 2008 - 15:26

ok dzięx!! ;]
  • 0

#6 Speed222

Speed222

    Początkujący

  • 78 postów

Napisano 18 04 2008 - 16:45

trym mam taki problem! wynik nie pojawia mi się w polu c_txt i nie wiem czy skrypt działąDołączona grafika czym to jest spowodowane (skopiowałem twoja formułkę)!
a jeszcze jedno: co oznacza zapis " var a:Number = 0; " ???
  • 0

#7 *Marta*

*Marta*

    Nowy

  • 1 postów

Napisano 18 04 2008 - 22:46

hm to wszystko piszecie w Adobe Flash'u ? <strasznie drogi program ... jest jakis darmowy alternatywny, jak linux dla windowsa?> Z góry dzieki za odp. Pozdrawiam
  • 0

#8 Speed222

Speed222

    Początkujący

  • 78 postów

Napisano 19 04 2008 - 11:26

Znaczy ja wszystko we Flashu robie, a czy istnieje jakaś alternatywa to nie mam pojęcia!

Wracając do mojego problemu: czy wie ktoś czemu to nie chce działać ??? :P :excl:
  • 0

#9 trym

trym

    Początkujący

  • 11 postów

Napisano 21 04 2008 - 12:40

hm to wszystko piszecie w Adobe Flash'u ? <strasznie drogi program ... jest jakis darmowy alternatywny, jak linux dla windowsa?> Z góry dzieki za odp. Pozdrawiam


Nie ma darmowego odpowiednika. Są jedynie programy oferujące część funcjonalności, np. kod można pisać za pomocą Mtasc (ale nie wiem czy da się go pod tym skompilować). Istieje jeszcze bilbioteka do PHP, która pozwala tworzyć proste obiekty flashowe, ale jest to mało pomocne rozwiązanie, jeśli chce się coś poważnego we flashu zrobić.
  • 0

#10 Kai

Kai

    Stały użytkownik

  • 237 postów

Napisano 03 05 2008 - 17:06

Z poziomu designera płatnym odpowiednikiem może być WPF/E aka Silverlight. W fazie rozwojowej niestety. Do tworzenia spod Linuxa za to opensource-owy Moonlight.

  • 0




Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych