Bonjour à tous,

je suis en train de réaliser une interface graphique au sein de laquelle j'affiche des donnés sur un axe. Jusque là pas de problème seulement j'ai rajouté une détection de clic afin de pouvoir alterner deux types de tracés sur le même axe en fonction du bouton pressé par l'utilisateur. j'ai donc implémenté tous ça de la manière suivante :
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
 
function sptDisplay (S)
 
%declaration de l'axe
ah1 = axes ('units', 'pixels', 'position', [30 ,65 , 600, 600],...
    'nextplot', 'replacechildren',  'box', 'on', 'ButtonDownFcn', @click);
axis (ah1', 'on');
 
% fonction appelée par un clic
    function click(~, ~)            
        disp('clic!');    
        switch(get(gcf, 'selectiontype'));            
            case 'normal'
                cla(ah1);
                plot(ah1, t, t.^2);
            case 'alt'
                cla(ah1);
                plot(ah1, t, t.^3-t);
        end
    end% end fonction clic()
 
end % fin du script
le problème c'est qu'après deux alternances, c'est que l'axe ne détecte plus du tout quelque clic que ce soit : le témoin
n'est même plus appelée. Et là je comprends pas, c'est comme si après un certain nombre de plot l'axe se remettait à zéro?

merci d'avance pour votre aide!