Bonjour à tous,
Après avoir cherché sur ce forum et sur le net, je n'arrive toujours pas à résoudre un souci sur mon code matlab.
J'ai une interface GUI dans laquelle il y a un tableau (4 colonnes, nombre de lignes variables). Dans ce tableau, grâce à un bouton, j'y ajoute des données. Je souhaite ajouter un bouton (DELETE PUSHBUTTON dans le code) sur lequel une fois cliqué dessus et après avoir sélectionné une case de ce tableau, la ligne comprenant la case sélectionnée est supprimée.
Voici mon code :
Quand je mets des breakpoints je n'ai pas de souci, mon a(1) vaut bien quelque chose, à savoir le numéro de la ligne sélectionnée.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 %-------------------- RÉCUPÉRER LA LIGNE SÉLECTIONNÉE -------------------- function stack_uitable_CellSelectionCallback(hObject, eventdata, handles) a=eventdata.Indices; %indices de la case sélectionnée handles.cell_sel=a(1);%Numéro de la ligne sélectionnée guidata(hObject, handles); % ------------------------- SUPPRIMER UNE LIGNE ------------------------ function delete_pushbutton_Callback(hObject, eventdata, handles) cell_sel=handles.cell_sel; %Numéro de la ligne sélectionnée layers=handles.layers; layers(cell_sel,:)=[]; handles.layer=layers; set(handles.stack_uitable,'Data',layers);%Actualiser affichage tableau guidata(hObject, handles);
Le problème c'est quand je lance le programme en entier, une erreur s'affiche :
Je pense que l'erreur vient de la ligne "a=eventdata.Indices;", mais je ne sais pas comment résoudre ce problème...??? Attempted to access a(1); index out of bounds because numel(a)=0.
Error in ==> stress_multicouches>stack_uitable_CellSelectionCallback at 115
handles.cell_sel=a(1);%Numéro de la ligne sélectionnée
Partager