Mathematica中的InputField控件
Manipulate是一個能夠簡便地引入強大動態(tài)交互模型的函數(shù),然而其中的控件以及對應的語法可能會讓一些朋友感到困惑。在之前的經驗中,我們已經見過很多語法結構。在本篇文章中,將介紹一個適用于任何語法的
Manipulate是一個能夠簡便地引入強大動態(tài)交互模型的函數(shù),然而其中的控件以及對應的語法可能會讓一些朋友感到困惑。在之前的經驗中,我們已經見過很多語法結構。在本篇文章中,將介紹一個適用于任何語法的控件:InputField。
InputField可以用于任何動態(tài)變量的值。如果語法和語義正確,那么模型就會根據(jù)輸入進行計算。但是要小心輸入的內容,否則可能無法正常運行或報錯。
舉個例子,考慮以下存在的問題:定義Function純函數(shù)時容易犯錯誤。如果忘記后面的amp;,Mathematica就無法識別這是定義的函數(shù)。改正后,程序就可以正常運行。
在版本8中,InputField進行了一些改進:可以限制輸入的類型,給出文本提示等。然而,在Manipulate的結構中,并不是所有選項都能正常運行(如果使用底層次構件來構建動態(tài)交互,則不會出現(xiàn)問題)。例如,下圖所示的高中習題,InputField的作用有限。在創(chuàng)建可計算文檔格式(CDF)的時候,某些導數(shù)導出、輸入框、對話框等函數(shù)基于安全的考慮而不支持。這是在為CDF編程時需要了解的。
其他控件
除了InputField之外,在Manipulate中還經常使用其他控件。下面介紹幾個較不重要的控件:
1. Slider滑動條:可以通過拖動滑塊來選擇數(shù)值。
2. RadioButton單選按鈕:用于選擇多個選項中的一個。
3. Checkbox復選框:用于選擇多個選項中的多個。
4. PopupMenu彈出菜單:通過點擊菜單來選擇選項。
這些控件在Manipulate中使用頻率較高,對于改善用戶體驗和增加交互性非常有幫助。
再會!