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
Joseph Pawlowski
Joseph Pawlowski 2019년 5월 15일
Geoff,
I ran my app and selected manually from the GUI five items within the uilistbox. I then closed my app and in the command window, I ran the following command, which gives me a 1x5 cell array.
getpref.PNG
Monika Jaskolka
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

댓글을 달려면 로그인하십시오.

채택된 답변

Joseph Pawlowski
Joseph Pawlowski 2020년 1월 2일
It looks like whatever this issue was, it is no longer an issue in R2019b.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Develop Apps Using App Designer에 대해 자세히 알아보기

제품


릴리스

R2016b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by