add values to my matrix each time i click on the button gui

3 次查看(过去 30 天)
Hello, i need to know how can we add values to our matrix each time i click on a button, i declared a global variable matrix, but each time i have the same values, i used this method in the button_callback
A = [1 2 3;
4 5 6]
newrow = [x y z]; % value to add
%add a row to existing matrix:
A = [A; newrow]
my problem is that i always have 3*3 matrix even if i'm pushing the button several time so, if you have any idea please help.
thanks and sorry for my bad english
  1 个评论
omar Benamiar Messari
a also did this but have the same problem.
function gui1_OpeningFcn(hObject, eventdata, handles, varargin)
handles.matrix=[];
function start_Callback(hObject, eventdata, handles)
newrow=[8,8,8,8];
handles.matrix=[handles.matrix;newrow];
guidata(hObject, handles);

请先登录,再进行评论。

回答(1 个)

Andy
Andy 2018-7-16
Each time the code runs you are setting the matrix A to its start value, a 2 x 3 matrix, then adding row three. The answer will always be a 3 x 3 matrix. You need to store the current value of the matrix globally then just add the new row.
  1 个评论
omar Benamiar Messari
i already did that but it's not working,
function varargout = gui1(varargin) global matrix; matrix=[];
this button to add values to my matrice
function start_Callback(hObject, eventdata, handles) global matrix; newrow=[15,0,0,0]; matrix=[matrix;newrow];
did i did something wrong ?

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Function Creation 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by