在大物实验中常常遇到这么一类测量型实验,需要通过直接测量量计算间接测量量,并通过不确定度传递规律计算相应的不确定度。不确定度计算常常涉及公式和查表,如果可以将表格常量和公式集成到程序里可以提高效率。这里简单介绍matlab图形用户界面程序GUI的编写步骤。
打开GUIDE
根据需要选择模板
一个空白的GUI编辑界面就出来了
编辑界面左栏是各GUI控件,可以点击拖拽做GUI布局
控件与算法的交互通过回调函数实现。现在以一个简单的加法器介绍GUI的基本实现过程。
双击控件打开控件检查器
主要修改Tag(标签)和String(默认显示),修改后效果如下:
选定按钮,点击鼠标右键,查看回调,选择callback进入回调函数编辑:
编辑回调函数:
x% --- Executes on button press in pushbutton1.
function pushbutton1_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
str1=get(handles.input1,'String');%获取第一个文本框输入,input1为其Tag
num1=str2double(str1);%字符串转浮点数
str2=get(handles.input2,'String');%获取第二个文本框输入,input1为其Tag
num2=str2double(str2);%字符串转浮点数
num=num1+num2;%实现加法
str=num2str(num);%浮点数转字符串
set(handles.result,'String',str);%为静态文本设置内容即显示计算结果
测试GUI是否能够正常使用
回调函数中的handles包含GUI中的所有信息,通过get()函数可以读取文本框中的信息,实现数据传递。
button控件可以作为算法的开关。
其他控件使用也是相似原理。
感兴趣的同学可以通过上述基础内容,结合其他参考资料,尝试编写一个不确定度计算器。