PDA

Просмотр полной версии : помогите оптимизировать код


kashita
26.10.2007, 14:33
Всем доброго дня.

возникла вот такая вот проблемка, имеется около 20 кнопок, 1 комбобокс, и десяточек Dynamic Text.

человек тыркая на конпку загружает в комбобокс какие то значения

on (press) {
this.cbox.removeAll()
this.cbox.addItem({data:1, label:"odin"});
this.cbox.addItem({data:2, label:"dva"});
this.cbox.addItem({data:3, label:"tri"});
this.cbox.addItem({data:4, label:"4etire"});
}

вот потом в комбобоксе он выбирает какое то из полученых значений и выводиться переменные в текстовые поля

on (change)
{
if (this.selectedItem.label=="odin") {m=5; z=4; p=9; o=6; s=2; r=8; g=''; b=8; };
if (this.selectedItem.label=="dva") {m=6; z=6; p=6; o=6; s=6; r=6; g=6; b=6;};

...

this._parent.l1.text=m;
this._parent.l2.text=z;
this._parent.l3.text=p;
this._parent.l4.text=o;
this._parent.l5.text=s;
this._parent.l6.text=r;
this._parent.l7.text=g;
this._parent.l8.text=b;
}

но проблема в том что ифов получается около 500 штук, а это не есть гуд для скорости, редактирования кода... и ваше мне так не оч нравится...
подскажите как можно проше сделать?

Мыкыта
26.10.2007, 16:13
с помошью цикла раздать события

Snut
26.10.2007, 20:49
for ... и понеслась... :)

orangeline
27.10.2007, 00:03
цикл for в данном случае ускорения не прибавит,он прибавит читабельности коду. для производительности вместо if используйте конструкцию switch.

kashita
28.10.2007, 01:00
всем спасибо! огромное :cool:

Snut
28.10.2007, 19:25
orangeline, ага и так можно.