How can i display a uicontrol object at different locations?
4 次查看(过去 30 天)
显示 更早的评论
Hi, I have a GUI with two tabs. On both tabs I want to display the identic edit field so that changes to one of the fields are always synched to both edit fields. Is this possible or unintended by the way GUI programming works?
If so, is there a clean workaround or any other ideas how I could achieve the feature?
Thanks and tell me if you need more specification of the problem. Jonas
2 个评论
Geoff Hayes
2017-11-10
Jonas - are you using GUIDE, App Designer, or are you programmatically creating the GUI?
采纳的回答
Geoff Hayes
2017-11-13
Hi Jonas - I suppose that you could assign the same callback to both edit controls. This callback would update a variable that could then be accessed by the other controls.
function sharedEditControl
hEdit1 = uicontrol('Style','Edit',...
'Callback', @EditControlCallback);
pos = get(hEdit1,'Position');
pos(2) = pos(2) + 100;
hEdit2 = uicontrol('Style','Edit',...
'Callback', @EditControlCallback, 'Position',pos);
sharedEditControlValue = [];
function EditControlCallback(hObject, eventdata)
sharedEditControlValue = get(hObject,'String');
fprintf('%s\n', sharedEditControlValue);
end
end
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Interactive Control and Callbacks 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!