Changing color of a string in listbox - MATLAB GUI
7 views (last 30 days)
Show older comments
I have a list of names in a listbox. What I would like to do is have a certain selected name change color, from red to green, when I click a button.
Thank you
0 Comments
Accepted Answer
Walter Roberson
on 14 Jun 2012
Don't add the name directly: add the HTML-ized version of the name.
htmlname = sprintf('<HTML><BODY bgcolor="%s">%s', 'red', ThisEntryName);
And in the callback:
namestr = cellstr(get(hObject, 'String'));
validx = get(hObject, 'Value');
newstr = regexprep(namestr{validx}, '"red"','"green"');
namestr{validx} = newstr;
set(hObject, 'String', namestr);
1 Comment
More Answers (6)
Tom
on 14 Jun 2012
You can do it with html- see http://undocumentedmatlab.com/blog/html-support-in-matlab-uicomponents/
0 Comments
Vincent I
on 14 Jun 2012
1 Comment
Dr. Seis
on 14 Jun 2012
What you are generally describing above should work with HTML... can you post a few pictures of what you envision? Or can you post the cell-string you are using to apply to the listbox... there might be a formatting issue that is preventing it from working.
Vincent I
on 18 Jun 2012
1 Comment
Walter Roberson
on 18 Jun 2012
namestr(validx) = []; %delete it from where it was
namestr = [ {newstr}; namestr ];
See Also
Categories
Find more on Graphics Object Programming in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!