Элементы управления и динамика
Элементы управления (Controls)
В Mathematica имеются многочисленные элементы управления: ползунки ( Slider ), несколько видов кнопок (окошко Checkbox, где можно поставить галочку, кнопки RadioButton, позволяющие выбрать одно из нескольких значений) и т. д. Эта особенность делает возможным организовывать пользователю удобный интерфейс. Приведем некоторые примеры.
Ползунок
In[1]:= Slider []
Ползунок можно вставлять в формулы:
In[2]:=l + Slider []
Ползунок можно вставлять в формулы в виде ползунка, скопировав его из вывода:
То же самое можно сделать, пометив ползунок и нажав комбинацию клавиш Ctrl+Shift+Enter. В результате Mathematica вычислит и заменит на результат ровно то выражение на входе, которое было помечено. Проверьте это на примере приведенного ниже выражения.
In[4] := 1 + Slider []
Однако, как видно, ползунок не участвует в вычислениях. Если хочется использовать ползунок для задания конкретных значений, можно обрамить его DynamicSetting, а затем скопировать результат в поле ввода. Вычисление результата будет учитывать конкретное значение, заданное ползунком.
Out[6] = 1.667
Ползунок может иметь разные параметры, например:
- Slider[x] устанавливает ползунок в положение x (предполагается, что x лежит между 0 и 1);
- Slider[x, {xmin, xmax}] устанавливает ползунок в положение x (мы предполагаем, что x лежит между xmin и xmax);
- Slider[x, {xmin, xmax, dx}] устанавливает ползунок в положение x (предполагается, что x лежит между xmin и xmax ), причем ползунок двигается дискретно с шагом dx:
In[7]:= Slider [0.5, {0, 2, 0.5}]
Аналогично работает двумерный ползунок Slider2D[]:
In[8]:=DynamicSetting[Slider2D[] ]
Несколько других примеров:
In[9] : = Manipulator [] Checkbox[] RadioButton[] ColorSlider[] Graphics[Locator[{0, 0}], PlotRange -> 1]
Как правило, чтобы "оживить" элементы управления, их используют вместе с оператором Dynamic[], про который речь пойдет ниже.