Strona 1 z 1

Wyświetlacz kalkulatora

: czw sie 09, 2007 9:19 am
autor: 3DH
Witam,

Ostatnio przerabialem kalkulator dla mojej strony i oczywiście utknąłem w połowie roboty. Kalkulator działa jak należy, ale mam drobny problem z wyświetlaczem. Chodzi o to, że działa tylko wtedy, kiedy jest w pierwszej, głównej warstwie filmu.

Używam tego skryptu:

Kod: Zaznacz cały

float register = 0;
float memory = 0;
string display = "0";
string operator = "";
bool display_flag = false;
bool operator_flag = false;
/////////
function Calculate ()
{
	if (operator_flag){
		if (operator == "+") register += Number (display);
		if (operator == "-") register -= Number (display);
		if (operator == "*") register *= Number (display);
		if (operator == "/"){
			if (register == 0){
				display = "Error";
				display_flag = false;
				return;}
			 register /= Number (display);}
		display = String (register);}
	else register = Number (display);
	if (display.length > 10) display = display.slice (0, 10);
	display_flag = false;
}
/////////
function AddNumber (number)
{
	if (!display_flag) display = String (number);
	else display += String (number);
	display_flag = true;
}
/////////
function Decimal ()
{
	if (display_flag){
		var i = display.indexOf (".");
		if (i == -1) display += ".";}
	else {
		display = "0.";
		display_flag = true;}
}
/////////
function Operate (op)
{
	Calculate ();
	operator = op;
	operator_flag = true;
}
/////////
function Equals ()
{
	Calculate ();
	operator = "";
	operator_flag = false;
}
/////////
function MemoryAdd ()
{
	Equals ();
	memory += Number (display);
}
/////////
function MemoryReturn ()
{
	display = String (memory);
	display_flag = false;
}
/////////
function Cancel ()
{
	display = "0";
	display_flag = false;
}
/////////
function CancelEverything ()
{
	register = 0;
	display = "0";
	display_flag = false;
	operator = "";
	operator_flag = false;
	memory = 0;
}
//////////
//////////
Każdy button korzysta z jednej z tych funkcji. Np.:
Button =
-> Call calculator
Equals()
I każdy przycisk działa bez względu na warstwe filmu, ale tylko wtedy, jeśli wyświetlacz(display) jest w pierwszej.

Co robię źle? Co mam poprawić aby wyświetlacz działał w innych warstwach?

Re: Wyświetlacz kalkulatora

: czw sie 09, 2007 4:17 pm
autor: Marek_bf
Zamknij plik kalulatora w odzielnum MC.

Re: Wyświetlacz kalkulatora

: pt sie 10, 2007 7:04 am
autor: 3DH
No wlasnie chodzi o to, że nie mogę. Zrobiłem:
Kalkulator
w osobnym filmie, i działa jak widać. Ale na stronie głównej już nie działa (F2 włącza/wyłącza kalkulator).

Btw. Praktycznie wszystkie obiekty na stronie są w osobnym mc, ale tylko kalkulator jest całkiem osobnym filmem/plikiem swf.

Re: Wyświetlacz kalkulatora

: pt sie 10, 2007 12:59 pm
autor: Marek_bf
Ciężko nie widząc plików, coś powiedzieć na temat. Kod wydaje się prawidłowy.