use multiple fonts in GUI pushbutton string
1 次查看(过去 30 天)
显示 更早的评论
Is there a way to use multiple fonts in string fields of pushbuttons and text in a GUI? The syntax that works for axis labels etc. doesn't seem to work using set(...
For example, I try this:
set(handles.pushbutton8,'String','\fontname{Symbol}t \fontname{Times} (sec)')
and my button string ends up being: \fontname{Symbol}t \fontname{Times} (sec)
instead of: τ (sec)
Anyone know what to do here?
0 个评论
采纳的回答
Geoff Hayes
2014-11-14
Thomas - one of those undocumented (and so unsupported) features of MATLAB is that you can embed HTML code in the String of your pushbutton (and perhaps other controls/widgets) to get the text that you desire. In your case, you seem to want the tau symbol to be followed by (sec). Try the following
set(handles.pushbutton8,'String','<html>&tau (sec)</html>');
When I try this (R2014a on OS X 10.8.5) I do see the Greek letter tau followed by (sec).
4 个评论
Geoff Hayes
2014-11-20
Hi Tom,
It is too bad that the same formatting elsewhere can't be applied for the text field too (but since it isn't a supported option then...). One very messy way to get what you want is to create an invisible axes and then place a text object (not a text control) within that axes. Something like
haxes = axes('Position',[0 0 1 1],'Visible','off');
text(0.5,0.5,'s_{max}','Parent',haxes)
If the above code were added to your GUI OpeningFcn, then the text, smax, would be placed in the middle of the GUI since the axes covers all of the figure. Messy and not good programming, but if really needed, it will do in a pinch.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Labels and Annotations 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!