4.2 Визуализация данных (GUI)

Display класс Button

Назначение: Единственная кнопка, с которой связана функция, вызываемой, когда кнопка нажата.

 

Пример: fn{s}:Õs            ã fn печатает его аргумент
         bû(fn;"Pressed!")  ã при нажатии на кнопку в функцию fn
                            ã  “Pressed!”подставляется
              show `b has (`class;      `button;
                          `shelltitle; "ShellTitle";
                           `title;      "Press this button")

 

 

 

Рисунок:

 

Display класс Check

Назначение:  Показывает slotfiller как набор кнопок, некоторые из которых могут    быть включены.

 

Пример:     ckû(`a`b`c`d;(0;1;1;1))

         show `ck has (`class;`check;

                       `shelltitle;'ShellTitle';

                       `title;' Show cols ';

                       `label;('Open';'High';'Low';'Close'))

 

Рисунок:

 

 

Display класс Choice

Назначение: Спускающееся меню, позволяет выбрать только одну кнопку из набора альтернатив.

 

Пример:

          chû(`Name`Account`Date`Security`Amount;(1;0;0;0;0))

           `ch is `choice

       `ch has (`shelltitle;'ShellTitle'; `title;'Sort by:')

          show `ch

 

Рисунок:

 

Display класс Graph,..Trace

Назначение: Графики различных видов; линия, рассеянная линия, barchart, piechart, и так далее.

 

Пример:    aû?10Т10

         bû?15Т10

         gû`a`b

         `g has (`class;`graph;`shelltitle;

                     'graph';`title;'a and b';`show;1)

 

 

Рисунок 1:

 

Пример 2:                               `a`b has¡< (`style;`bar)

 

Рисунок 2:    

Display класс Hmenu

Назначение:  Представляет slotfiller как горизонтальное каскадное меню; подменю вертикальное.

 

Пример:    menuûs.rsf{

         ã s.rsf преобразует данный вид в  slotfiller

       (`file;(

                  `new;       newfn;

                  `open;      openfn;

                  `close;     closefn;

                  `save;(

                              `save;      savefn;

                              `save_as;   save_asfn));

       `edit;(

                  `undo;      undofn;

                  `cut;       cutfn;

                  `copy;      copyfn;

                  `paste;     pastefn);

       `format;(

                  `font;(

                              `kaplgallant;;

                              `courier;);

                  `size;      sizelist;

                  `style;     stylelist)

        )

                }

show `menu is `hmenu

Рисунок:

 

Display класс Hpane

Назначение:  Контейнер, который располагает дочерние объекты так, что пользователь может перемещать вертикальную границу между объектами.

 

Пример:  mûÉ10 10

                  `m has (`class;`matrix;  `title;"Matrix Title";

        `label;("Labels";

                (<"Row"),¡î¡É10;

                (<"Col"),¡î¡É10));

                   aûÉ20

                  `a has (`class;`array;  `title;("Array";"Title"));

                   hû1 2Ò`m`a

                  `h has (`class;`hpane;  `title;"HPane Title";

        `shelltitle;"Shell Title"; `show;1);

Рисунок:

 

 

Display класс Hscale

Назначение: Показывает скаляр в графической и (произвольно) цифровой форме и позволяет пользователю изменять его значение.

 

Пример: bû40

             `b is `hscale

            `b has (`title ;"hscale b")

              show `b

 

 

Рисунок:

 

Display класс Label

Назначение: Простой widget, чтобы показать текст; он никогда не имеет scrollbars.

 

Пример: aû('The last entry created';

        'out of bounds';

        'results.')

                            `a is `label

                 `a has (`fg`shelltitle;(`black`red;'a'))

                   show `a

 

Рисунок:

 

Display класс Layout

Назначение: Контейнер, в котором дочерние объекты располагаются по договоренности, со многими выборами.

 

 

Пример:  aû10

         bû'An object in a layout'; `b is `label

         cû(É10)Ê.*É3

        lû(`a`b;`c)

       `l is `layout

       `l has (`shelltitle;'a')

        show `l

 

Рисунок:

 

Display класс Matrix

Назначение: Показывает матрицу (которая является не простой символьной матрицей), с рядами, столбцами, и ярлыками столбцов и рядов.

 

Пример:  mû?10 10Ò100

               ã угловой ярлык; ярлыки рядов; ярлыки столбцов.

           labsûî¡¡(Ó/Ó/m;Ó/@1 m;Ó/ m) 

                  `m has (`class;`matrix; `label;labs)

ã Allows multiple rows to be selected simultaneously

     `m has (`selectionmode;`multiple)         `m has (`rowindex;1 3)

     `m has (`index;2 5)

     show `m

 

Рисунок:

 

Display класс Radio

Назначение:  Для slotfillers; показывает кнопки, для которых можно выбрать 1 из n; автоматически лишает законной силы предыдущий выбор.

 

Пример: rdû(`one`two`three;(0;1;0))

           `rd is `radio

           `rd has (`shelltitle;'rd')

         show `rd

 

Рисунок:

 

Display класс Slot

Slot

 

Назначение: Для slotfillers; области отображения slot:  ярлык (символический индекс по умолчанию) и значение  (доступное); никакого scrolling.

 

Пример: slû(`one `two `three;(0 0 2; "abc"; 3 4))

       `sl is `slot

        `sl has (`shelltitle;'sl';

              `title;'The above example')

          show `sl

 

 

Рисунок: 

 

Display класс Table,tableField

 

Назначение:  Таблица (вектор символов) содержит отображенные маркированные поля (вектора или символьной матрицы) tableFields.

 

Пример: thousandsû10«hundredsû10«tensû10«onesûÉ10

            tû`ones`tens`hundreds`thousands

           `t is `table

           `t has (`shelltitle;'t')

         show `t

 

Рисунок:

 

Display класс Text

Назначение: Для символьных векторов; общие средства для вывода текста; может использоваться как блокнот.

Пример: tû"    Note to File  07/12/00 No. 4"

        ã должен начаться с простого символьного вектора

     `t has (`shelltitle `title;('text';'text'))

     show `t is `text

Рисунок:

 

 

 

Display класс Vpane

Назначение: Контейнер, который располагает дочерние объекты так, что пользователь может перемещать горизонтальную границу между объектами.  (аналогично hpane)

Display класс Vscale

Назначение: Показывает скаляр в графической и (произвольно) цифровой форме и позволяет пользователю изменять его значение. (аналогично hscale)

 

Сайт создан в системе uCoz