PDA

Просмотр полной версии : RadioButton не работает..


LiStopaD
01.04.2009, 13:21
var signupListener:Object = new Object();
signupListener.click = function(eventInfo){
var radioData = newsletter.selection.data;
trace(radioData);
};
zapros_bt.addEventListener("click", signupListener.click);Вот листинг, при трасировке выводит undefined. В чем проблема, не могу понять. Пишу в Action Script 2.0

Fatality
01.04.2009, 13:40
Во первых:
var signupListener:Object = new Object();
signupListener.click = function(eventInfo){
var radioData = newsletter.selection.data;
trace(radioData);
};
zapros_bt.addEventListener("click", signupListener);
А во вторых, что есть newsletter, RadioButtonGroup ?

alexcon314
01.04.2009, 13:40
Для оформления своего кода надо использовать теги (http://www.flasher.ru/forum/showthread.php?t=122539)
Исочником события click является группа радиобаттонов (RadioButtonGroup). Пример из хэлпа.
/**
Requires:
- RadioButton component in library
*/

import mx.controls.RadioButton;

this.createClassObject(RadioButton, "first_rb", 10, {label:"first", groupName:"radioGroup"});
this.createClassObject(RadioButton, "second_rb", 20, {label:"second", groupName:"radioGroup"});
this.createClassObject(RadioButton, "third_rb", 30, {label:"third", groupName:"radioGroup"});

// Position RadioButtons on Stage.
second_rb.move(0, first_rb.y + first_rb.height);
third_rb.move(0, second_rb.y + second_rb.height);

// Create listener object.
var rbListener:Object = new Object();
rbListener.click = function(evt_obj:Object){
trace("The selected radio instance is " + evt_obj.target.selection);
}
// Add listener.
radioGroup.addEventListener("click", rbListener);
А лучше так:

// начало такое же
// ...
third_rb.move(0, second_rb.y + second_rb.height);

this.click = function(evt_obj:Object){
trace("The selected radio instance is " + evt_obj.target.selection);
}
// Add listener.
radioGroup.addEventListener("click", this);

LiStopaD
01.04.2009, 13:55
newsletter -это текущее значение группы

alexcon314
01.04.2009, 14:22
this.click = function(eventInfo){
var radioData = newsletter.selection.data;
trace(radioData);
};
newsletter.addEventListener("click", this);