ListBoxTop property not updating displayed listbox line
2 次查看(过去 30 天)
显示 更早的评论
I've seen several other users in the past that had issues w/ listboxes & viewing the bottom-most data. Usually the answers include using the 'ListBoxTop' property, which should be the correct answer. But I don't find any code snippets that actually work (and I don't want to put my hands into the java guts w/ undocumented properties unless absolutely necessary). So, here's the gauntlet once and for all...why doesn't this code display the bottom line of the listbox?
function ListboxTester_01
fh = figure('MenuBar','none',...
'NumberTitle','off',...
'Position',[200 200 170 100],...
'Name','ListboxTester');
cwh = uicontrol(fh,...
'Style','edit',...
'Max',4,...
'Position',[10 40 150 50],...
'HorizontalAlignment','left',...
'SelectionHighlight','of',...
'HitTest','off');
uicontrol(fh,...
'Style','pushbutton',...
'String','test',...
'Position',[10 10 150 20],...
'Callback',@testbutton_callback);
ii=1;
function testbutton_callback(~,~)
inputstring = sprintf('Testing%d',ii);
cwhstring = get(cwh,'String');
newtext = cell(length(cwhstring)+1,1);
newtext(1:end-1) = cwhstring;
newtext(end) = {inputstring};
set(cwh,'String',newtext);
set(cwh,'ListBoxTop',numel(newtext),'Value',numel(newtext));
drawnow;
ii = ii+1;
end
end
1 个评论
回答(1 个)
Sean de Wolski
2012-4-16
Because it's an edit uicontrol and not a listbox uicontrol. Change line seven to:
'Style','listbox',...
and watch the magic!
另请参阅
类别
在 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!