[转载]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);

显示结果

在这里需要注意的是,一行中间最好不要有空格,如果有的话,函数会把它分配成两个段落的。
Matlab 中的静态文本框中显示多行内容

猜你喜欢

转载自www.cnblogs.com/airbird/p/11455241.html