How to create pop out warning messages?

1 次查看(过去 30 天)
I am trying to create a function that will display messages by comparing a certain input. How can I display messages at each stage, which is like a warning box. Please help
function [ output_args ] = Newfunction( velocity )
%UNTITLED Summary of this function goes here
% Detailed explanation goes here
if (cond)
velocity >= 120;
h=msgbox('Your speed is okay');
else if velocity >=100 & velocity <=100;
h=msgboc('Warning:Approaching Stall');
else
h=msgbox('STALL');
end
end

回答(3 个)

Walter Roberson
Walter Roberson 2013-3-6

Image Analyst
Image Analyst 2013-3-6
warningMessage = sprintf('Warning: your velocity = %f\nYou may stall!', velocity);
uiwait(warndlg(warningMessage));
The uiwait is in there so your code does not go blasting merrily along. The uiwait() will cause the code to pause until the user clicks OK.

Achchuthan Ganeshanathan
function [ output_args ] = Newfunction( h )
%UNTITLED Summary of this function goes here
% Detailed explanation goes here
if 120<h<105
then warningMessage = sprintf('Warning: your velocity = %f\nYou may stall!', h);uiwait(warndlg('Approaching Stall'));
else if 105<h<100;
then warningMessage = sprintf('Warning: your velocity = %f\nYou may stall!', h); uiwait(warndlg('Close to stall'));
else if h<100
then warningMessage = sprintf('Warning: your velocity = %f\nYou may stall!', h);uiwait(warndlg('STALL'));
end
end
end
It comes up as h is undefined as an error. h is a variable that changes and it is a user input, how can i insert a variable into it so i can get rid of the error. thankyou so much for the help so far guys
  9 个评论
Achchuthan Ganeshanathan
function [ output_args ] = Newfunction( h )
%UNTITLED Summary of this function goes here
% Detailed explanation goes here
if 105 < h && h < 120
warningMessage = sprintf('Warning: your velocity = %f\nYou may stall!', h);
uiwait(warndlg('Approaching Stall'));
elseif 100<h && h <105;
warningMessage = sprintf('Warning: your velocity = %f\nYou may stall!', h);
uiwait(warndlg('Close to stall'));
elseif h <100
warningMessage = sprintf('Warning: your velocity = %f\nYou may stall!', h);
uiwait(warndlg('STALL'));
end
I have done what you advised me to do, I am still getting the error message. I apologise I am fairly new to all this. where do you think i seem to be going wrong
??? Input argument "h" is undefined.
Error in ==> Newfunction at 5 if 105 < h && h < 120
Walter Roberson
Walter Roberson 2013-3-8
How are you starting the code running? Are you going to Newfunction in the editor and pressing F5 or selecting run from the menus? If you are, then you cannot do that when you want to pass in parameters. You need to instead go to the command line and give a command such as
Newfunction(108)
Notice that is at the command line, not part of your code. It would instruct MATLAB to actually run the code, passing in the value 108 for h. Change the 108 to the value you want to give to h for your run.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Migrate GUIDE Apps 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by