Bonjour,
Voilà, dans mon appli Flex, j'ai une grille dans laquelle, sur clic de chaque cellule j'appelle une seule et même fonction : maFonction(day:String, moment:String, event);
Ce que je fais actuellement dans cette fonction pour gérer mes différentes cellules est :
Et, comme l'on peut je pense s'en douter, j'aimerais pouvoir rendre tout cela générique en "construisant" ma variable. En fait, au lieu de faire un switch ... case, je devrais pouvoir écrire une seule ligne du genre :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39 switch (day) { case 'Lundi' : if (moment == 'matin') { lundi_matin_selected = ! lundi_matin_selected; heures_vbox.visible = (lundi_matin_selected == true) ? true : false } if (moment == 'midi') { lundi_midi_selected = ! lundi_midi_selected; heures_vbox.visible = (lundi_midi_selected == true) ? true : false } if (moment == 'soir') { lundi_soir_selected = ! lundi_soir_selected; heures_vbox.visible = (lundi_soir_selected == true) ? true : false } break; case 'Mardi' : if (moment == 'matin') { mardi_matin_selected = ! mardi_matin_selected; heures_vbox.visible = (mardi_matin_selected == true) ? true : false } if (moment == 'midi') { mardi_midi_selected = ! mardi_midi_selected; heures_vbox.visible = (mardi_midi_selected == true) ? true : false } if (moment == 'soir') { mardi_soir_selected = ! mardi_soir_selected; heures_vbox.visible = (mardi_soir_selected == true) ? true : false } break; case 'Mercredi' : if (moment == 'matin') { mercredi_matin_selected = ! mercredi_matin_selected; heures_vbox.visible = (mercredi_matin_selected == true) ? true : false } if (moment == 'midi') { mercredi_midi_selected = ! mercredi_midi_selected; heures_vbox.visible = (mercredi_midi_selected == true) ? true : false } if (moment == 'soir') { mercredi_soir_selected = ! mercredi_soir_selected; heures_vbox.visible = (mercredi_soir_selected == true) ? true : false } break; case 'Jeudi' : if (moment == 'matin') { jeudi_matin_selected = ! jeudi_matin_selected; heures_vbox.visible = (jeudi_matin_selected == true) ? true : false } if (moment == 'midi') { jeudi_midi_selected = ! jeudi_midi_selected; heures_vbox.visible = (jeudi_midi_selected == true) ? true : false } if (moment == 'soir') { jeudi_soir_selected = ! jeudi_soir_selected; heures_vbox.visible = (jeudi_soir_selected == true) ? true : false } break; case 'Vendredi' : if (moment == 'matin') { vendredi_matin_selected = ! vendredi_matin_selected; heures_vbox.visible = (vendredi_matin_selected == true) ? true : false } if (moment == 'midi') { vendredi_midi_selected = ! vendredi_midi_selected; heures_vbox.visible = (vendredi_midi_selected == true) ? true : false } if (moment == 'soir') { vendredi_soir_selected = ! vendredi_soir_selected; heures_vbox.visible = (vendredi_soir_selected == true) ? true : false } break; case 'Samedi' : if (moment == 'matin') { samedi_matin_selected = ! samedi_matin_selected; heures_vbox.visible = (samedi_matin_selected == true) ? true : false } if (moment == 'midi') { samedi_midi_selected = ! samedi_midi_selected; heures_vbox.visible = (samedi_midi_selected == true) ? true : false } if (moment == 'soir') { samedi_soir_selected = ! samedi_soir_selected; heures_vbox.visible = (samedi_soir_selected == true) ? true : false } break; case 'Dimanche' : if (moment == 'matin') { dimanche_matin_selected = ! dimanche_matin_selected; heures_vbox.visible = (dimanche_matin_selected == true) ? true : false } if (moment == 'midi') { dimanche_midi_selected = ! dimanche_midi_selected; heures_vbox.visible = (dimanche_midi_selected == true) ? true : false } if (moment == 'soir') { dimanche_soir_selected = ! dimanche_soir_selected; heures_vbox.visible = (dimanche_soir_selected == true) ? true : false } break; }
J'ai vu au cours de mes recherches, que dans les versions précédentes d'ActionScript, il y avait la fonction Eval(). Celle-ci n'est apparemment plus disponible, et il faudrait utiliser un tableau, mais je ne suis pas arrivé à comprendre comment procéder pour utiliser ce fameux tableau.
Code : Sélectionner tout - Visualiser dans une fenêtre à part day + '_' + moment + '_selected' = !(day + '_' + moment + '_selected')
Sauriez-vous donc comment "construire" dynamiquement ma variable afin de rendre mon code générique ?
Merci
Partager