私はMATLABでGUIを作っています。これはユーザーからの数値入力を受け付け、それに応じて計算を行います。私はユーザーが数字の代わりに文字を入力するたびにエラーダイアログボックスを作成できるようにしたい。これまでのところ私は、エラーメッセージを表示するためのコードのこのビットを持っている:Matlab guiのエラーメッセージ
ed = errordlg('Please enter numbers only','Error'); set(ed, 'WindowStyle', 'modal');uiwait(ed);
をそして、これは私がエラーメッセージを統合したいと思いメインコードのセクションです:
function roofspace_Callback(hObject, eventdata, handles)
aSpace = str2double(get(hObject,'String')); %This is the user entered value for the roofspace.
set(hObject,'UserData',aSpace);
if aSpace==0 %If aSpace does not have anything then nothing is enabled.
set(findall(handles.uipanelFunds, '-property', 'enable'), 'enable', 'off');
set(findall(handles.uipanelPanels, '-property', 'enable'), 'enable', 'off');
set(findall(handles.uipanelUsage, '-property', 'enable'), 'enable', 'off');
set(handles.calculate,'enable','off');
set(hObject,'String','');
else %If aSpace hs a value then this enables the rest of the inputs.
set(findall(handles.uipanelFunds, '-property', 'enable'), 'enable', 'on');
set(findall(handles.uipanelPanels, '-property', 'enable'), 'enable', 'on');
set(findall(handles.uipanelUsage, '-property', 'enable'), 'enable', 'on');
set(handles.calculate,'enable','on');
end
EDIT: 要約すると、私はそれがユーザーかどうかをチェックするように、私はこのコードのセクションに私のエラーメッセージコードを統合する方法を把握する必要があります数字が入力されている場合は、エラーメッセージが表示されます。現時点では、コードはユーザーが入力した内容に関係なくエラーメッセージを表示します。次のように
いくつかの洞察...何ですか?あなたの質問は何ですか? – excaza
@excaza、非数値入力がユーザーによって与えられたときにこのコードでエラーメッセージを表示するにはどうすればよいですか?現時点では、入力された内容に関係なく、エラーメッセージが表示されます。私は、これを達成するためにエラーメッセージコードをプログラムに統合する方法を知らない。 – Oreomega
ユーザ入力がifループをネストする場所よりも後の数値かどうかを調べる方法をもっと見ているようだ。 (実際にあなたのコードがあるなら、if文をどこに置くべきかを知っていると確信しています)。 – BillBokeey