Listbox words not aligning up after using HTML for changing string color

조회 수: 1 (최근 30일)
Hi,
I'm having some issues with the text alignment in one of my Listboxes due to using HTML to change the color properties of each individual string. I was wondering if there's anything that I could do to fix the problem and have the letters alligne just like the first Listbox(left)?
I've tried to change the Listbox font but with no effect. I am positive that the reason why the lettes dont align is because of the HTML line/code implemented to charge the string property, since once I remove the code or not use it(as shown in figure 1, left) the letters allign properly.
Thank you
code used to for string color manipulation:
line = sprintf('<HTML><BODY bgcolor="transparent" text="blue" >%s',line);

채택된 답변

Jan
Jan 2013년 1월 3일
편집: Jan 2013년 1월 7일
str = sprintf('<HTML><FONT color="blue" face="monospace">%s', str);
You can get the font name of the listbox explicitly:
FontName = get(ListBoxHandle, 'FontName');
str = sprintf('<HTML><FONT color="blue" face="%s">%s', FontName, str);
Btw, using the symbol "line" as name of a variable shadows the built-in function with the same name.
[EDITED] In HTML several neighboring spaces are displayed as one space. Therefore try this to convert the string:
str = strrep(str, ' ', '&ampnbsp;');
str = sprintf('<HTML><FONT color="blue" face="monospace">%s', str);
PS. Creating the string "&ampnbsp;" is not trivial in the forum, because this is displayed as non-braking space. Therefore I had to escape the & by using the HTML special character.
  댓글 수: 5
Jan
Jan 2013년 1월 7일
@Vicent: Fine! Again we have won the battle between human and human made computers.

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

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Desktop에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by