[转载]Matlab 之静态文本多行输出
转载文章,原文链接:Matlab 中的静态文本框中显示多行内容
有时候,我们在 GUI 中利用静态文本框显示程序的结果,但是结果很长,一行未必可以显示的开,而静态文本框不像 edit 或 listbox 那样通过滚动条来显示多行内容,即便设置了 max 和 min 属性也是一样的。
于是,怎么在静态文本框中显示多行是很有意义的。
解决方法
利用函数 textwrap
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);
显示结果
在这里需要注意的是,一行中间最好不要有空格,如果有的话,函数会把它分配成两个段落的。