【问题标题】:How to disable listbox horizontal scrolling in Matlab GUI如何在 Matlab GUI 中禁用列表框水平滚动
【发布时间】:2016-11-19 16:20:27
【问题描述】:

当字符串或句子变得太长时,Matlab GUIDE 列表框组件的水平滚动被激活。如何禁用此功能并让长字符串或句子在下一行继续?

【问题讨论】:

    标签: matlab user-interface listbox matlab-guide horizontal-scrolling


    【解决方案1】:

    我误解了这个问题,所以我的答案不正确(但已被接受)。

    可以实现您想要的,但没有记录。查看Undocumented features,了解更多信息。

    来自链接:

    换行

    默认情况下,换行是打开的,有效地禁用 水平滚动(这就是为什么 Matlab 设置 Horizo​​ntalScrollBarPolicy 到 HORIZONTAL_SCROLLBAR_​​NEVER。然而,在 在某些情况下,关闭换行可能更有用 使用 TextArea 的 setWrapping() 方法进行水平滚动。 这是一个使用示例:

    jViewPort = jScrollPane.getViewport; jEditbox =
    jViewPort.getComponent(0); jEditbox.setWrapping(false);  % do *NOT*
    use set(...)!!! newPolicy =
    jScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED;
    set(jScrollPane,'HorizontalScrollBarPolicy',newPolicy);
    

    另外,请查看此链接:this link:

    如果你想让它看起来像在单独的行上,但让 Matlab 像在一行上一样解析它,那么你将不得不使用另一个编辑器。我认为没有任何具有内置语法突出显示的编辑器支持此功能,因此您最好的选择可能是具有固定大小字体的 MS Word(Courier New 或其他东西)。在我看来,这是一个可怕的想法,但这是可能的。

    执行此操作的“正确”方法是 use ... 创建多行字符串/分配等:

    例子:

    mystring = ['Accelerating the pace of ' ... 
            'engineering and science'];
    

    或使用方程式:

    s = 1 - 1/2 + 1/3 - 1/4 + 1/5 ...
          - 1/6 + 1/7 - 1/8 + 1/9;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-28
      • 1970-01-01
      • 2013-01-31
      • 1970-01-01
      • 1970-01-01
      • 2011-01-24
      相关资源
      最近更新 更多