IF statement inside a push button
3 次查看(过去 30 天)
显示 更早的评论
Hi! I have a gui which stores a numerical value in a variable from the edit text when I click the apply button (push button). I want to add an if statement stating that when the numerical value is the same as the current time, also stored in another variable, the background color of a push button will change.
There is no error in the code when I run it, but the if statement inside the push button is not working. Here is some of the code:
apply_Callback(hObject, eventdata, handles) mon1= get(handles.m1,'string'); %get from the edit text t=clock;
t1=num2str(fix(t(5)));
if mon1==t1
set(handles.b101,'BackgroundColor','red');
end
0 个评论
采纳的回答
Amit
2014-2-5
Assuming rest of the code is right
mon1= str2num(get(handles.m1,'string'));
The first thing I'll think is that you're getting a string in mon1 and comparing that to a integer would be false in all cases.
更多回答(1 个)
Image Analyst
2014-2-6
Try this:
% Read user's input in the edit field.
% editString = get(handles.edit1, 'String');
% Give an example of what would be a match if they typed it in correctly.
editString = '05-Feb-2014 18:12:11' % For testing/debugging.
currentTimeString = datestr(now)
if strcmp(editString, currentTimeString)
uiwait(msgbox('They Match!!!!'));
else
fprintf('%s does not match %s\n', editString, currentTimeString);
end
You can modify the time strings if you don't want to check for matching seconds but only minutes or days or whatever.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Characters and Strings 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!