在uicontrol上scilab多行

时间:2017-02-14 23:23:12

标签: scilab uicontrol

我试图显示包含多行的文字,但我无法在Scilab中获得该语法。我已经尝试使用" |"和" \ n"。

是否有人可以更改此代码以支持String " Informacoes sobre o programa e como usa-lo" 上的多行?

handles.textoTutorial=uicontrol(f,'unit','normalized','BackgroundColor',[-1,-1,-1],'Enable','on','FontAngle','normal','FontName','Tahoma','FontSize',[12],'FontUnits','points','FontWeight','normal','ForegroundColor',[-1,-1,-1],'HorizontalAlignment','left','ListboxTop',[],'Max',[1],'Min',[0],'Position',[0.5014641,0.0514019,0.3989751,0.8987539],'Relief','default','SliderStep',[0.01,0.1],'String','Informacoes sobre o programa e como usa-lo','Style','text','Value',[0],'VerticalAlignment','middle','Visible','on','Tag','textoTutorial','Callback','')

谢谢。

2 个答案:

答案 0 :(得分:0)

你不能将多行或一个字符串向量传递给text uicontrol:这将给出错误(Scilab 5.5.1):Wrong dimension of property 'String' : expecting a string.

但我会给你两个难看的答案:

首先:使用edit样式的uicontrol,并将maxmin属性设置为max-min > 1。然后uicontrol允许多行编辑,因此可以使用sprintf('a line\nan other line')设置字符串属性。问题是它仍然是一个可编辑的uicontrol(文本可以修改)。我看到的唯一解决方法是将enable属性切换为off,但这会给字体带来灰色,无论foregroundcolor属性如何,并且取决于背景颜色,文字可能很难看到。

第二:如果您限制uicontrol以适合您的文字,您可以将文字放在多行上(请参阅帮助中的constraintscreateConstraints);我不知道这项任务的难度,但这是可能的。

答案 1 :(得分:0)

这是一个例子(有奖金:-):

clf
text = "<html><font color=""red"">Informacoes sobre o programa e como usa-lo</font><br>"+..
       "Line #2<br>" + ..
       "Line #3<br>" + ..
       "etc…";
uicontrol("style","text","string",text, 'Position',[0.501,0.05,0.4,0.9],'unit','normalized')

它产生了

enter image description here