Remove Items

13 views (last 30 days)
Maryam Emad
Maryam Emad on 14 Dec 2011
Commented: Image Analyst on 14 Jul 2014
How I can Remove a specific Items from listbox ??

Accepted Answer

Image Analyst
Image Analyst on 14 Dec 2011
You have to get the 'String' value of the listbox, which will be a cell array.
currentItems = get(hListbox, 'String');
Set the row for the item you want to remove equal to[].
newItems = currentItems;
newItems(rowToDelete) = []; % Or something like that - maybe it's {}
Then send the cell array back to the listbox with the
set(hListbox, 'String', newItems)
function.
  1 Comment
Walter Roberson
Walter Roberson on 14 Dec 2011
Note:
if get(hListbox,'ListboxTop') >= min(rowToDelete)
then you will want to set(hListbox, 'ListboxTop') to a different value as otherwise it will point to the wrong place or point past the end of the new list.

Sign in to comment.

More Answers (1)

Maryam Emad
Maryam Emad on 15 Dec 2011
Thanks a lot "Image Analyst" ..
I try to use your code , it is work good and remove specific items.
But, when I want to delete the last item , listbox was deleted as a whole!!!
Pleas Help me :(
  8 Comments
Jihad Chamseddine
Jihad Chamseddine on 14 Jul 2014
I don't know if you guys are still in this page, but I want to ask you if I want when I remove an item from the listbox so they will be renumbered automatically, can that be done? for example I have items numbered from 1 to 10, so if I delete the item 7, I want that the numbers will be renumbered. hope you can help me guys
Image Analyst
Image Analyst on 14 Jul 2014
You're going to have to use something like sscanf() to parse the number out of the line of text. Basically strip off the numbers and rebuild your list from scratch with new numbers.

Sign in to comment.

Categories

Find more on Migrate GUIDE Apps in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!