用户输入
有时需要明确地处理用户通过鼠标或键盘的输入。有特殊的评估时间“鼠标向下”、“鼠标向上”、“单击鼠标”、“拖动鼠标”和“键入键”(请参见输入程序代码). 这些评估时间正好是在相应事件发生时捕获的。如果要对相应的事件数据作出反应,有几个操作符可以读取输入数据。
鼠标和键
鼠标位置:鼠标()
描述:返回一个向量,该向量表示按下鼠标时鼠标的当前位置。矢量以同质坐标给出(这也允许访问无限对象)。如果需要鼠标位置的二维欧氏坐标,可以通过鼠标().xy
.
关键输入:键()
描述:返回一个包含最后键入的字符的字符串。
是否按下了某个键:iskeydown(<int>)
描述:此运算符返回一个布尔值,如果按下某个键,该值为真。有问题的键由参数中的整数指定。此运算符可用于确定转移按键。钥匙的代码通常是65、66、66。。。。用于“A”、“B”、“C”,。。。“shift”、“crtl”和“alt”的代码通常为16、17、18。
所有按键列表:keydownlist()
描述:此操作员返回所有按下键的代码列表。MIDI函数一章中给出的按键列表id的一个有趣应用程序,其中有一个示例键盘钢琴.
AMS重力数据
在苹果硬件上,CindyScript可以访问笔记本电脑的重力传感器并确定其在空间中的相对方向。重力传感器返回三维矢量。
获取原始AMS数据:amsdata()
描述:该操作员返回AMS传感器的原始数据。
获取校准的AMS数据:校准的msdata()
描述:该操作员返回AMS传感器数据的校准版本。校准数据是一个单位长度的矢量,表示计算机在空间中的方向。
在视图中创建自定义工具栏
灰姑娘可以用来将交互式工作表导出到html页面。通常,不仅需要导出交互式构造,还需要导出一组构造工具(如用于构造点、线或圆的按钮)。通过使用以下一组辛迪脚本可以轻松创建(和删除)位于applet窗口中的自定义工具栏。
工具栏对于创建交互式学生练习尤为重要。下面给出了一个示例互动练习.
创建自定义工具栏:createtool(<string>,<int>,<int>)
创建自定义工具栏:createtool(<list>,<int>,<int>)
描述:在灰姑娘视图中创建一个或多个工具按钮。第一个参数要么是描述单个构造工具的字符串,要么是描述整个工具栏的字符串列表或矩阵。其他两个参数以像素距离描述相对于屏幕角的位置。通常,createtool语句位于初始化脚本编辑器的插槽。
以下与构造工具相对应的字符串标识符可用:
- 概述:
“移动”
,“删除”
- 要点:
“点”
,“交叉点”
,“中间”
,“居中”
- 线路:
“行”
,“细分市场”
,“直通线路”
,“并行”
,“正交”
,“角平分器”
- 圈子:
“圆形”
,“半径圆”
,“指南针”
,“按3圈”
,“圆弧”
- 圆锥曲线:
“圆锥乘以5”
,“椭圆”
,“双曲线”
,“抛物线”
- 特殊:
“极点”
,“极坐标线”
,“多边形”
,“反思”
,“地点”
- 措施:
“距离”
,“角度”
,“区域”
还可以从CindyLab添加施工工具:
- 本地:
“质量”
,“速度”
,“橡胶带”
,“春天”
,“库仑”
- 环境:
“重力”
,“太阳”
,“楼层”
,“蹦蹦跳跳”
,“磁铁”
工具的位置相对于构造视图是固定的。默认情况下,会选择左上角。通过使用修改器参考
你也可以选择其他角落。此修饰符的允许值为“UL”“UR”“LL”“LR”
。这里第一个字母代表上部/下部第二个字母代表左/右.
示例:例如,下面的一段代码给出了最简单的用法。由创建的工具
下面给出了使用多个工具创建工具栏的更复杂示例
createtool([“移动”,“点”,“线”,“圆”],2,2);
createtool([“移动”,“点”,“线”,“圆”],2,2,翻转->true);
createtool公司([[“移动”,“点”,“线”,“圆”],[“平行”、“正交”、“半径圆”、“指南针”],[“距离”、“角度”、“面积”、“多边形”],],2,2,翻转->假);
createtool公司(…与上面的示例相同。。。,参考->“LR”);
修改人:createtool操作符可以处理下表中总结的修饰符:
修饰符 | 参数 | 效果
|
参考 | <字符串> | 参考位置 |
轻弹 | <布尔> | 翻转->真 交换行和列 |
空间 | <整数> | 工具之间的间距(以像素为单位) |
从自定义工具栏中删除工具:移除工具(<string>)
描述:从自定义工具栏中删除工具。
删除所有自定义工具栏:移除工具()
描述:从自定义工具栏中删除所有工具。