필터 지우기
필터 지우기

GUI question:Change data depending on ListBox choice

조회 수: 2 (최근 30일)
Samah EL QASSAH
Samah EL QASSAH 2017년 6월 6일
편집: ES 2017년 6월 6일
Hi,
I want to change the color of the button "Pass" according to the choice of the listBox as shown by the code below:
function list_VIN_Callback(hObject, eventdata, handles)
if strcmp(get(handles.list_VIN,'String'), '...............< Aucun >.............')
set(handles.Pass, 'BackgroundColor','red');
else
set(handles.Not_Pass, 'BackgroundColor','green');
end;
Is this correct what I wrote as code? it deosn't work!
  댓글 수: 2
Adam
Adam 2017년 6월 6일
You are setting the BackgroundColor of two different buttons in that code, but you only seem to have one button. What is the tag of the 'Pass' button?
Samah EL QASSAH
Samah EL QASSAH 2017년 6월 6일
편집: Samah EL QASSAH 2017년 6월 6일
Thank you to notify me, I corrected the code
function list_VIN_Callback(hObject, eventdata, handles)
if strcmp(get(handles.list_VIN,'String'), '...............< Aucun >.............')
set(handles.Pass, 'BackgroundColor','red');
else
set(handles.Pass, 'BackgroundColor','green');
end;
When I make a choice VIN1, VIN2 or VIN3 the button "Pass" becomes green but when I chose "....<Aucun>....the" Pass "button does not become red.
%

댓글을 달려면 로그인하십시오.

답변 (2개)

ES
ES 2017년 6월 6일
What is the tag of the pass button? I think you are trying to set both the 'String' and 'BackgroundColor' property. If yes, you are doing it the wrong way. You can only set properties to a object by using its unique tag.

ES
ES 2017년 6월 6일
편집: ES 2017년 6월 6일
% get(handles.listbox1,'String') returns listbox1 contents as cell array. So the 'if' will not work.
You should instead get the selected content by using
% Hints: contents = cellstr(get(hObject,'String')) returns listbox1 contents as cell array
% contents{get(hObject,'Value')} returns selected item from listbox1
The strcmp should be done on contents{get(hObject,'Value')}

카테고리

Help CenterFile Exchange에서 Loops and Conditional Statements에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by