How can I programmatically select multiple choices from a uilistbox?
조회 수: 12 (최근 30일)
이전 댓글 표시
I have an App Designer app containing a uilistbox that has both the 'Items' and 'ItemsData' properties specifed.
When my users close the app, I use setpref() to keep a persistent record of which values were selected in the uilistbox.
% Save user preferences
setpref('dddPrefs', 'ReportHeaderFields', app.ReportHeaderListBox.Value);
in the startupFcn method of the app, I use getpref() to grab the values that were previously selected in the uilistbox. The preferences aspect works fine. I can display the selected values in a message box, for example.
However, when I try to use the persistent preference value to reselect the appropriate items from the ullistbox, I cannot select more than one programatically. If I only select one value from the uilistbox and restart the program, that same value is indeed selected when I reopen. However, if I select multiple options and restart the program, the uilistbox appears to have no items selected.
% Read in preferences
app.ReportHeaderListBox.Value = getpref('dddPrefs', 'ReportHeaderFields');
댓글 수: 3
Monika Jaskolka
2020년 10월 7일
편집: Monika Jaskolka
2020년 10월 7일
Just wanted to say that I also have this issue. It tried the following code to incrementally select the items one-by-one, and it doesn't work. If I add a breakpoint and step through the code, it works just fine. Also, if I attempt to multi-select programmatically (which doesn't select anything), it then prevents me from subsequently multi-selecting via the GUI (shift+select).
for i = 1:length(perferenceVal)
app.ListBox.Value{end+1} = perferenceVal{i};
drawnow;
end
채택된 답변
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Develop Apps Using App Designer에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
