Bonjour, je sèche depuis quelques jours sur un cas ou je mêle toujours plusieurs popupmenus , je détails :


dans un premier temps je souhaite Verifier ce que je sélectionne dans une série de popupmenu :

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
function fonction_graphs(handles)
 
nameList = {'modele_', 'modele'};  
for iName = 1:2
  for iIndex = 1:10     
      Field  = sprintf('%s%d', nameList{iName},iIndex);
 
         if findobj('Tag',Field,'Enable','on')
            H = handles.(Field);  
            String = get(H, 'String');
            Value  = get(H, 'Value');    
            EmptyStringSelected2 = cellfun('size', String(Value == 1),3);
 
 
         end
  end
end
Il manque un bout mais s'était le début : je souhaite vérifier dans une série de menu nommé : modele1 à modele10 qui me propose Thermique ou Electrique .
Ensuite une deuxième de série modele_1 à modele_10 me permet de choisir les transmissions .

Au final : je souhaite permettre à partir de ces 20 menus faire une détection sur ces deux sérieus qui me permettrait d'afficher Thermique/électrique/transmission dans le plus gros cas dans un seul Menu nommé : graph.

Puis Lorsque j'ai choisis Electrique/Thermique ou Transmission un modèle à également été choisis.

Une fois ces éléments affichés je souhaite selon le cas afficher dans un second popupmenu les Modeles que j'ai sélectionné (pour afficher des graphs propre à chaque modèles )

Exemple : Modele1 et Modele_1 : Thermique et Moteur Thermique 1 puis Modele2 et Modele_2 Electrique et Moteur Electrique 2 .

Transmission => celles sélectionnés également ( dans la même idée que les moteurs ).

: Chose à prendre en compte : les menus modele_ et modele comme il y en a 10 de chaque permettent de choisir un grand nombre d'éléments et de varier le choix


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
function fonction_graphs_1(handles)
 
val = get(handles.graph,'Value');
str = get(handles.graph,'String'); 
 
 
switch str{val};
 
    case 'Electrique'
        set (handles.graph_1,'Enable','on');
        set(handles.graph_1, 'String', {' ','ME_1','ME_2'},'value',1);
 
    case 'Transmission'
        set (handles.graph_1,'Enable','on');   
        set(handles.graph_1, 'String', {' ','TR_1','TR_4'},'value',1);
 
end

c'est à dire que la selection soit automatique sans faire de Case car il y aura des rajouts de fichier et que les personnes ne seront pas forcement apte à retoucher le programme sans l'abimer et perdre du temps .

donc pour résumer :
1) 10 menus : choix multiple : Electrique/thermique
2) 10 menus : Transmission ou RIEN
3) Je choisis des modèles ( de Moteur Electrique/Thermique et de Transmission )
4) je souhaite afficher ce le type qui à été choisis avant ( Electrique/Thermique/Transmission (les 3 dans le plus gros cas ))
5) je sélectionne l'un des trois éléments dans le premier menu => affiche dans le second menu les modèles qui ont été sélectionné pour les cas Moteurs et transmissions.