PDA

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


igp
05.10.2002, 19:05
собственно не работает .checked!!!! :confused:
Даже если выставлять его руцями! :( :(


Наличие всех объектов гарантируется :)
Скрипт:

if (_root.rb11.Checked == true) {
_score = Number(_score)+0;
}
if (_root.rb12.Checked == true) {
_score = Number(_score)+1;
}
if (_root.rb13.Checked == true) {
_score = Number(_score)+2;
}
if (_root.rb14.Checked == true) {
_score = Number(_score)+3;
}

Nox Noctis
07.10.2002, 03:15
очень просто ! =))

потому что НЕТ ТАМ НИКАКОГО ".checked "

об этом можно было догадаться сделав поиск по листу всех переменных (Ctrl+Alt+V во время проигрывания)
...там вообще слово "checked" не упоминается... =)))

а еще проще было залезть в определение класс FRadioButtonClass и пошарить там... там нет такого :)

зато там есть .selected =)

if (_root.rb11.selected == true) {
_score = Number(_score)+0;
}
if (_root.rb12.selected == true) {
_score = Number(_score)+1;
}
if (_root.rb13.selected == true) {
_score = Number(_score)+2;
}
if (_root.rb14.selected == true) {
_score = Number(_score)+3;
}

все работает...
но так работать с радиобаттонами некорректно...
то есть в данном случае все нормально, поскольку

FRadioButtonClass.prototype.getState = function()
{
return this.selected;
}

но лучше все-таки вызывать getState() для определения состояния баттона... во имя правильности объектного подхода :)
а зачем иначе еще интерфейс класса ? :))

igp
09.10.2002, 23:01
Я решил другим способом!!! :) :) :)

РАБОТАЕТ - 100% - :D :D :D

RadioButton1.child.checked


:eek: :D
Вот так вот!
:cool:

Nox Noctis
10.10.2002, 14:29
нда ?
и где такое свойство child ? и что за параметр checked ?
что-то не наблюдаю таких в стандартной компоненте радиобаттон... :)

...ну, можно было в конце концов и самому радиобаттон написать :D

igp
10.10.2002, 19:08
Я не знаю.

Я не асс (по англиски не читать :D ) в ActionScript, но следующий скрипт, который я написал сам без никого, прекрасно работает. ;)



on (release) {
if (rb31.child.checked == true) {
_score = Number(_score)+0;
}
if (rb32.child.checked == true) {
_score = Number(_score)+1;
}
if (rb33.child.checked == true) {
_score = Number(_score)+2;
}
if (rb34.child.checked == true) {
_score = Number(_score)+3;
}
nextFrame ();
}



ФАКТ в ТОМ, что ЭТО РАБОТАЕТ!!! :eek:

А это мне и нужно! :)

igp
10.10.2002, 19:12
Правда с избыточным программированием.... :D


НО зато и через год будет понятно, что я хотел сделать! :)