哪种变量更合适?

时间:2016-11-28 09:48:51

标签: matlab user-interface variables button radio

我要在MATLAB中构建一个GUI。此GUI页面应该进行我的设置。

我有六个单选按钮,Camera One到Six。在这些单选按钮下,我有三个额外的单选按钮,裁剪侧,然后在此部分我有一个裁剪百分比滑块。

我想要的是,我需要选择相机按钮5,然后自动设置我在Crop Side和Slider中的单选按钮上完成的最新设置。 例如,一旦我选择了Camera Two按钮并将Crop Side设置为'Left'并将Crop Percent Slider设置为12.

下次检查时,裁剪侧和裁剪百分比的值将分别设置为“左”和12。 我不知道哪种变量和哪种语法模型对此更有用。

以下是我的代码和图的链接:

https://www.4shared.com/account/home.jsp?sId=kcxzI7wiO9gxGRtq&changedir=-gDLNzzw http://cdn.persiangig.com/download/GFJExIPKMO/Works.zip/dl

1 个答案:

答案 0 :(得分:1)

在每个按钮的回调函数中,包含一段代码以保存按钮值,然后在每次选择新相机时加载这些值,例如:如果你点击相机5,然后点击radiobutton作为裁剪,它可能看起来像这样:

function radiobuttonCrop_Callback(hObject,event)
% <Here is the code you have atm>

% Add this code
load('guiSettings.mat')               % Loads a .mat file containing your settings 
settings.cam5.crop = get(hObject,'Value'); % Updates settings.crop to the current value
save('guiSettings.mat')               % Saves the updates
end

当您点击其他相机时,例如摄像机3,如下所示加载摄像机3的设置:

function radiobuttonCamera3_Callback(hObject,handles)
load('guiSettings.mat')
set(handles.radiobuttonCrop,'Value',settings.cam3.Crop)
set(handles.slider,'Value',settings.cam3.Slider)

等等。

注意:guiSettings.mat是包含设置的文件名。使用load('guiSettings.mat')加载时,您将获得文件中包含的变量settingssettings是一个包含所有摄像机和摄像机所有设置的结构。

我希望这会有所帮助。