# Создание web-страниц с доступом к MATLAB

## 11. Область ввода с переменной высотой

При работе в любом текстовом редакторе мы привыкли, что вставка текста раздвигает область ввода с добавлением новых строк. Это можно сделать и в нашей области ввода команд MATLAB. Вот пример области переменной высоты:

clear all % очищаем память syms x y=sin(x) y1=diff(y,x) xpl=linspace(0,pi); ypl=subs(y,x,xpl); ypl1=subs(y1,x,xpl); figure plot(xpl,ypl) xlim([min(xpl) max(xpl)]) title(['График функции y=' char(y)]) figure plot(xpl,ypl1) xlim([min(xpl) max(xpl)]) title(['График функции y=' char(y1)])

Описание области:

      <textarea class="InpData" rows=15 cols=72 wrap="off" name="Inp1"
        onClick="SetHeight(Inp1)" onKeyPress="SetHeight(Inp1)">
    clear all % очищаем память
    ...</textarea>

Функция подгонки высоты области ввода:

    sub SetHeight(MyInp) ' Устанавливает число рядков области ввода
      Dim ArrOfStr, CountRows
      ArrOfStr = Split(MyInp.Value, vbCr, -1, 1) ' Перевели строку ввода в массив
      CountRows = Ubound(ArrOfStr)+1 ' Нашли нужное число рядков
      if CountRows>1 then
        MyInp.rows = CountRows ' Установили нужное число рядков
      end if
    end sub