Creating Library with App Designer

1 view (last 30 days)
Esin Derin
Esin Derin on 22 Dec 2019
Commented: Adam Danz on 28 Dec 2019
value = app.ISBNEditField.Value;
ISBN=app.ISBNEditField.Value;
BOOKS=app.BOOKSListBox.Value;
GetBook=app.GetBookButton;
Information=app.InformationTextArea;
GetBook=[1234 1235 1236 1237];
Books=input('Anna Karenina,Les Miserables,War and Peace,Of Mice and Man','s');
function output=Library
if a == 1234
Information = 'Anna Karena';
elseif a == 1235
Information = 'Les Miserables';
elseif a == 1236
Information = 'War and Peace';
elseif a == 1237
Information = 'Of Mice and Men';
else
Information = 'not available';
end
app.InformationTextAreaLabel.Text = 'not available right now';
for i = 1 : length(app.BOOKSlist.Items)
if ISBN == app.BOOKSlist.Items(i)
app.InformationTextAreaLabel.Text = string(i);
break;
end
end
end
for app.GetBookButton=1234
app.InformationTextArea.Author=='Tolstoy';
app.InformationTextArea.Pages=='1000';
if app.GetBookButton==1235
app.InformationTextArea.Author=='Hugo';
app.InformationTextArea.Pages=='416';
for app.GetBookButton==1236
app.InformationTextArea.Author=='Tolstoy';
app.InformationTextArea.Pages='516';
for app.GetBookButton=1237
app.InformationTextArea.Author=='John Steinbeck';
app.InformationTextArea.Pages=='187';
end
end
It keeps giving me this error:
Error using Library
Error: File: Library.mlapp Line: 53 Column: 16
Unexpected MATLAB operator.
  3 Comments
Esin Derin
Esin Derin on 24 Dec 2019
app.InformationTextArea.Author=='Tolstoy';
app.InformationTextArea.Pages=='1000';
With equal signs.
Esin Derin
Esin Derin on 24 Dec 2019
Defined a function with two variables but this isn't working either.No error,just not working.
function output = my_output(x,y)
ISBN=app.ISBNEditField.Value;
BOOKS=app.BOOKSListBox.Value;
% it affect app getbookbutton to getbookbutton
GetBook=app.GetBookButton;
Information=app.InformationTextAreaLabel.Text;
GetBook=[1234, 1235 ,1236, 1237];
% this function output the information of book
% count number of enter books
for i = 1 : length(app.BOOKSlist.Items)
if ISBN == app.BOOKSlist.Items(i)
app.InformationTextAreaLabel.Text = string(i);
break;
end
if app.GetBookButton==1234
app.InformationTextArea.Author='Tolstoy';
app.InformationTextArea.Pages='1000';
output(app.InformationTextArea.Author,app.InformationTextArea.Pages)
elseif app.GetBookButton==1235
app.InformationTextArea.Author='Hugo';
app.InformationTextArea.Pages='416';
output(app.InformationTextArea.Author,app.InformationTextArea.Pages)
elseif app.GetBookButton==1236
app.InformationTextArea.Author='Tolstoy';
app.InformationTextArea.Pages='516';
output(app.InformationTextArea.Author,app.InformationTextArea.Pages)
elseif app.GetBookButton==1237
app.InformationTextArea.Author='John Steinbeck';
app.InformationTextArea.Pages='187';
output(app.InformationTextArea.Author,app.InformationTextArea.Pages)
elseif output('not information for author','not information')
end
end

Sign in to comment.

Accepted Answer

Adam Danz
Adam Danz on 26 Dec 2019
When comparing strings or char arrays, use strcmp() instead of A==B. Also, to combine conditions, use && as shown below.
if app.GetBookButton==1235 && ...
strcmp(app.InformationTextArea.Author, 'Hugo') &&...
strcmp(app.InformationTextArea.Pages, '416')
strcmp() is case-sensitive. For case insensivitity, use strcmpi().
  3 Comments
Esin Derin
Esin Derin on 27 Dec 2019
function output = my_output(x,y)
ISBN=app.ISBNEditField.Value;
BOOKS=app.BOOKSListBox.Value;
% it affect app getbookbutton to getbookbutton
GetBook=app.GetBookButton;
Information=app.InformationTextAreaLabel.Text;
GetBook=[1234, 1235 ,1236, 1237];
% this function output the information of book
% count number of enter books
for i = 1 : length(app.BOOKSlist.Items)
if ISBN == app.BOOKSlist.Items(i)
app.InformationTextAreaLabel.Text = string(i);
break;
end
if app.GetBookButton==1234
strcmp(app.InformationTextArea.Author,'Tolstoy')
strcmp(app.InformationTextArea.Pages,'1000')
output(app.InformationTextArea.Author,app.InformationTextArea.Pages)
elseif app.GetBookButton==1235
strcmp(app.InformationTextArea.Author,'Hugo')
strcmp(app.InformationTextArea.Pages,'416')
output(app.InformationTextArea.Author,app.InformationTextArea.Pages)
elseif app.GetBookButton==1236
strcmp(app.InformationTextArea.Author,'Tolstoy')
strcmp(app.InformationTextArea.Pages,'516')
output(app.InformationTextArea.Author,app.InformationTextArea.Pages)
elseif app.GetBookButton==1237
strcmp(app.InformationTextArea.Author,'John Steinbeck')
strcmp(app.InformationTextArea.Pages,'187')
output(app.InformationTextArea.Author,app.InformationTextArea.Pages)
elseif output('not information for author','not information')
end
end
end
Adam Danz
Adam Danz on 28 Dec 2019
What is the entire copy-pasted error message?
What are the values of the variables producing the error?

Sign in to comment.

More Answers (0)

Categories

Find more on Develop Apps Using App Designer in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!