Variable amount of checkboxes in listbox (programmatic GUI)
4 次查看(过去 30 天)
显示 更早的评论
I have in my programmatic GUI the following listbox:
h.listbox = uicontrol('style','listbox','units','pixels',...
'position',[10,175,200,200],...
'string',components_index);
The entire program gives me the following output:
What I now want, is that in front of every stock, I have a checkbox. Keep in mind that the amount of stocks is variable.
Can anyone point towards a solution?
Thanks in advance,
Jonathan
0 个评论
采纳的回答
Adam
2014-8-26
I don't think that is possible with Matlab UI controls. However, if you don't mind doing some experimentation with undocumented controls, the following information on Yair Altman's excellent blog may help:
2 个评论
Adam
2014-8-27
Yeah, I've shied away from the hardcore Jide UI programming too for now and have also been using uitable of late. I don't like it at all and it took me probably as long to get right as Jide would, but it does a job so glad you got that to work for you.
更多回答(1 个)
Yair Altman
2014-9-4
There are actually 2 built-in controls that you could use within Matlab:
- com.jidesoft.swing.CheckboxList
- com.mathworks.mwswing.checkboxlict.CheckBoxList
jList = java.util.ArrayList; % any java.util.List will be ok
jList.add(0,'First');
jList.add(1,'Second');
jList.add(2,'Third');
jList.add(3,'and last');
jCBList = com.mathworks.mwswing.checkboxlist.CheckBoxList(jList);
jScrollPane = com.mathworks.mwswing.MJScrollPane(jCBList);
[jhCBList,hContainer] = javacomponent(jScrollPane,[10,10,80,65],gcf);
set(jCBList, 'ValueChangedCallback', @myMatlabCallbackFcn);
jCBModel = jCBList.getCheckModel;
jCBModel.checkAll;
jCBModel.uncheckIndex(1);
jCBModel.uncheckIndex(3)
2 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Migrate GUIDE Apps 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!