Matlab之静态文本多行输出

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Matlab之静态文本多行输出相关的知识,希望对你有一定的参考价值。

转载文章,原文链接:Matlab中的静态文本框中显示多行内容

有时候,我们在GUI中利用静态文本框显示程序的结果,但是结果很长,一行未必可以显示的开,而静态文本框不像edit或listbox那样通过滚动条来显示多行内容,即便设置了max和min属性也是一样的。

于是,怎么在静态文本框中显示多行是很有意义的。

解决方法

利用函数textwrap

1
2
3
4
5
6
figure(‘units‘, ‘normalized‘, ‘position‘, [0.4 0.4 0.4 0.3]);
h = uicontrol(‘Style‘,‘Text‘,‘fontsize‘,16);
string = {‘静态文本框为什么是静态的?‘,‘因为不能像编辑框一样滚动显示其中的内容‘,...
‘如果想在静态文本框中多行显示‘,‘按照这种方式就可以实现‘,‘调用textwrap函数啊!‘};
[outstring, newpos] = textwrap(h, string);
set(h,‘String‘, outstring, ‘Position‘, newpos);

 

显示结果

在这里需要注意的是,一行中间最好不要有空格,如果有的话,函数会把它分配成两个段落的。
技术分享

以上是关于Matlab之静态文本多行输出的主要内容,如果未能解决你的问题,请参考以下文章

Matlab中具有多行的图例

MATLAB GUI制作快速入门

MATLAB GUI制作快速入门

MATLAB GUI text 静态文本控件

如何用MAtlab把多行数据转化为一列

MATLABUTF-8编码文本输出