屏幕#
介绍#
VEX AIR 无人机控制器的屏幕提供用于显示文本、管理光标、绘制形状和处理触摸交互的模块。
**注意:**如果 VEX AIR 无人机已与控制器配对,则打印屏幕顶部将显示一个计时器,指示当前项目的已用时间。任何文本或绘图都将显示在计时器后面。
以下是所有可用块的列表,按功能分组:
光标打印 - 使用行列光标系统管理文本显示。
在屏幕上打印 — 在屏幕上当前光标位置显示文本。
将光标设置到屏幕上的行列 — 将光标移动到指定的行和列。
将光标移至屏幕上的下一行 — 将光标移至下一行的第 1 列。
清除屏幕上的行 — 清除指定的一行文本。
屏幕光标列 — 返回将打印文本的列号。
屏幕光标行 — 返回将打印文本的行号。
XY 打印 - 在基于像素的坐标处打印文本。
在屏幕上的坐标处打印 — 在指定的 x 和 y 坐标处显示文本。
设置屏幕原点 — 更改用于绘图和打印的原点 (0, 0)。
设置 - 自定义文本格式和屏幕显示。
清除屏幕 — 从屏幕上删除所有文本和图形。
等待屏幕渲染 — 阻止显示任何打印或绘图,直到再次使用该块。
填充屏幕 — 从屏幕上删除所有文本和图形,然后设置屏幕的背景颜色。
设置屏幕字体 — 更改文本显示的字体类型和大小。
设置屏幕上的打印精度 — 调整打印数字的小数位数。
设置屏幕上的笔宽 — 调整绘制线条的粗细。
设置屏幕上的笔/字体颜色 — 更改文本和绘图的颜色。
设置屏幕上的文本填充颜色 – 设置打印文本时使用的突出显示颜色。
设置屏幕上的绘制填充颜色 — 设置形状的填充颜色。
绘制——创建图形和视觉元素。
在屏幕上显示图像文件 — 在屏幕上显示用户上传的图像。
在屏幕上绘制像素 — 在指定坐标处绘制单个像素。
在屏幕上绘制线条 — 在两点之间绘制一条线。
在屏幕上绘制矩形 — 绘制一个具有指定尺寸的矩形。
在屏幕上绘制圆 — 绘制一个具有给定半径的圆。
触摸 - 检测屏幕交互。
光标打印#
屏幕打印#
在屏幕上打印 块会在控制器的屏幕上,以当前光标位置和字体显示文本。
在屏幕上打印 [VEXcode]▶
参数 |
描述 |
|---|---|
价值 |
要在屏幕上显示的文本、数字或变量值。 |
扩大箭头 |
展开块读取 并将光标设置到下一行 ,并使光标移动到该块之后的下一行。 |
例子
当开始
[Display a message at the starting cursor position.]
在屏幕上打印 [Time to fly!]▶

将光标设置到屏幕上的行列#
使用“将光标设置到屏幕上的行和列”模块时,光标会放置在屏幕上的特定行和列。屏幕上可显示的字符数取决于所选字体。可以使用“设置屏幕上的字体”模块更改字体大小。使用默认的等宽中等字体,最多可以清晰显示 18 行和#set-font-on-screen列。超出此范围的文本可能会被截断或难以阅读。
在屏幕上设定光标至 [1] 行 [1] 列
参数 |
描述 |
|---|---|
排 |
游标所在行。 |
柱子 |
光标所在的列。 |
示例
当开始
[Display text starting at Row 7 Column 25.]
在屏幕上设定光标至 [7] 行 [25] 列
在屏幕上打印 [Row 7, Column 25]▶

将光标移至屏幕上的下一行#
将光标设置到屏幕上的下一行 代码块会将光标移动到控制器屏幕上下一行的第 1 列。
在屏幕上设定光标至下一行
参数 |
描述 |
|---|---|
该块没有参数。 |
例子
当开始
[Display two lines of text.]
在屏幕上打印 [Line 1]▶
在屏幕上设定光标至下一行
在屏幕上打印 [Line 2]▶

屏幕上的清除行#
清除屏幕上的行 代码块会清除控制器屏幕上的一行文本。
清除屏幕第 [1] 行
参数 |
描述 |
|---|---|
排 |
要清除的行号。 |
例子
当开始
[Clear only the second row of text.]
在屏幕上打印 [This text stays]▶
在屏幕上设定光标至下一行
在屏幕上打印 [This text disappears]▶
等待 [3] 秒
清除屏幕第 [2] 行
屏幕光标列#
屏幕光标列返回光标的当前列位置。
(屏幕光标列数)
参数 |
描述 |
|---|---|
该块没有参数。 |
例子
当开始
[Display the cursor's current column.]
在屏幕上设定光标至 [7] 行 [25] 列
在屏幕上打印 (屏幕光标列数)▶

屏幕光标行#
屏幕光标行块返回光标的当前行位置。
(屏幕光标行数)
参数 |
描述 |
|---|---|
该块没有参数。 |
例子
当开始
[Display the cursor's current row.]
在屏幕上设定光标至 [7] 行 [25] 列
在屏幕上打印 (屏幕光标行数)▶

XY打印#
在屏幕上的坐标处打印#
在屏幕上指定坐标处打印 代码块会在控制器屏幕上指定的 (x, y) 像素位置显示文本,并使用当前设置的字体 (#set-font-on-screen)。x 设置文本起始位置距离屏幕左侧的距离,y 设置字母底部的位置。此方法会忽略当前光标位置。
在屏幕x:[80] y:[120]上打印 [VEXcode]
参数 |
描述 |
|---|---|
价值 |
要在屏幕上显示的文本、数字或变量值。 |
x |
x 坐标(以像素为单位)(0 到 640,其中 0 为左,640 为右)。 |
y |
y 坐标(以像素为单位)(0 到 480,其中 0 为顶部,480 为底部)。 |
例子
当开始
[Display a message starting in the middle of the screen.]
在屏幕x:[320] y:[240]上打印 [Hello, drone!]

设置屏幕原点#
设置屏幕原点 设置在控制器屏幕上绘图或打印时使用的原点 (0, 0)。默认情况下,绘图或打印块将屏幕左上角视为原点。此块可以将原点重置为另一个 (x, y) 屏幕坐标位置。
设置屏幕原点 x: [0] y: [0]
参数 |
描述 |
|---|---|
x |
设置新原点的 x 坐标(以像素为单位)。 |
y |
设置新原点的 y 坐标(以像素为单位)。 |
例子
当开始
[Set the origin to the center of the screen.]
设置屏幕原点 x: [320] y: [240]
[Draw a rectangle at the new origin.]
在屏幕 [0] [0] [80] [40] 上画矩形

设置#
清除屏幕#
清除屏幕块清除控制器屏幕上的所有图形、文本和图像。
清屏
参数 |
描述 |
|---|---|
该块没有参数。 |
例子
当开始
[Draw a circle, and clear it after 2 seconds.]
在屏幕 [320] [240] [80] 上画圆形
等待 [2] 秒
清屏
等待屏幕渲染#
等待屏幕渲染块可防止任何后续屏幕块显示,然后在再次使用时立即显示其所有输出。
注意:使用此块会改变项目,以便所有后续屏幕块将保持隐藏状态,直到再次使用等待屏幕渲染块。
等待屏幕渲染
参数 |
描述 |
|---|---|
该块没有参数。 |
例子
当开始
[Display text and images when button 7 is pressed.]
等待屏幕渲染
在屏幕上打印 [Screen rendered!]▶
在屏幕 [320] [240] [80] 上画圆形
等到 <遥控器按键 [7 v] 按下了?>
等待屏幕渲染

填满屏幕#
填充屏幕块清除控制器屏幕上的所有图形和文本,然后将背景更改为指定的颜色。
屏幕填充色为 [红色 v]
参数 |
描述 |
|---|---|
颜色 |
将背景颜色更改为:
|
例子
当开始
[Say "Hello" then turn screen green.]
在屏幕上打印 [Hello]▶
等待 [2] 秒
屏幕填充色为 [绿色 v]

设置屏幕上的字体#
“设置屏幕字体”模块用于设置控制器屏幕上显示文本的字体和字号。此字体将应用于之后所有打印的文本。
设定屏幕字体为 [等宽字体 v] [中 v]
参数 |
描述 |
|---|---|
类型 |
字体类型:
|
尺寸 |
字体大小(如下所示):
|
|
与上一张图片相同,现在使用 Mono 15 字体。字母 AZ 位于一行,占据屏幕近一半的宽度。左下角显示 |
与上一张图片相同,现在使用 Mono 20 字体。字母 AZ 位于一行,占据屏幕宽度的一半。左下角显示“53 个字符, |
|---|---|---|
与上一张图片相同,现在使用 Mono 24 字体。字母 AZ 位于一行,占据屏幕宽度的一半多一点。左下角显示“45/_static/img/fonts/MONO24-hornet.png字符, |
与上一张图片相同,现在使用 Mono 30 字体。字母 AZ 位于一行,占据屏幕宽度/_static/img/fonts/MONO30-hornet.png大约四分之三。左下角显示“35 个字符, |
与上一张图片相同,现在使用 Mono 40 字体。字母 AZ 位于一行,横跨屏幕宽度。左下角显示“26 个字符, |
与上一张图片相同,现在使用 Mono 60 字体。字母 AQ 位于一行,横跨屏幕宽度。左下角显示 17/_static/img/fonts/MONO60-hornet.png字符, |
|
|
|
|
|
例子
当开始
[Display text using a larger font.]
设定屏幕字体为 [等宽字体 v] [特大 v]
在屏幕上打印 [VEX]▶

设置屏幕打印精度#
“设置屏幕打印精度”模块用于设置控制器屏幕上显示数字的精度格式。此打印精度将应用于之后打印的所有数字。
在屏幕上设定打印精度为 [0.1 v]
参数 |
描述 |
|---|---|
精确 |
将打印精度设置为:
|
例子
当开始
[Print 1/3 as 0.33.]
在屏幕上设定打印精度为 [0.01 v]
在屏幕上打印 ([1] [math_division v] [3])▶

设置屏幕上的笔宽#
设置屏幕上的笔宽 模块用于设置绘制线条和形状时使用的笔宽。
设定屏幕笔宽为 [10]
参数 |
描述 |
|---|---|
宽度 |
笔的宽度(以像素为单位)。 |
例子
当开始
[Draw a rectangle with a pen width of 10.]
设定屏幕笔宽为 [10]
在屏幕 [200] [200] [200] [80] 上画矩形

设置屏幕上的笔/字体颜色#
“设置屏幕上的画笔/字体颜色”模块用于设置控制器屏幕上绘制线条、形状和文本所用的画笔颜色。默认颜色为白色。
设定屏幕笔/字体颜色为 [红色 v]
例子
参数 |
描述 |
|---|---|
颜色 |
将笔颜色设置为:
|
当开始
[Draw a rectangle with an orange outline.]
设定屏幕笔/字体颜色为 [orange v]
在屏幕 [200] [150] [240] [150] 上画矩形
设定屏幕笔/字体颜色为 [white v]
print [VEXcode AIR] at x: [250] y: [220] on screen

设置屏幕上的文本填充颜色#
“设置屏幕上的文本填充颜色”模块用于设置文本打印时使用的突出显示颜色。默认突出显示颜色为透明。
将屏幕上的文本填充颜色设置为 [红色 v]
参数 |
描述 |
|---|---|
颜色 |
将文本高亮颜色设置为:
|
示例
当开始 :: hat events
[Display two colors behind text.]
将屏幕上的文本填充颜色设置为 [红色 v]
在屏幕上打印 ["Red"]▶
在屏幕上设定光标至下一行
将屏幕上的文本填充颜色设置为 [蓝色 v]
在屏幕上打印 ["Blue"]▶
设置屏幕上的绘制填充颜色#
“设置屏幕上的绘制填充颜色”模块用于设置绘制形状时填充形状的颜色。默认填充颜色为黑色。
将屏幕上的绘制填充颜色设置为 [红色 v]
参数 |
描述 |
|---|---|
颜色 |
将形状填充颜色设置为:
|
示例
当开始
[Draw an orange-filled rectangle with text on top.]
将屏幕上的绘制填充颜色设置为 [orange v]
在屏幕 [200] [150] [240] [150] 上画矩形
print [VEXcode AIR] at x: [250] y: [220] on screen

画#
在屏幕上显示图像文件#
在屏幕上显示图像文件 块会在控制器的屏幕上 设置原点 处绘制用户上传的自定义图像。
显示图像文件 [IMAGE1 v]
参数 |
描述 |
|---|---|
图像编号 |
要使用的用户上传的图片。如果在控制面板中编辑了图片名称,选项将会更改。 |
例子
当开始
[Display custom image on screen.]
显示图像文件 [IMAGE1 v]
在屏幕上绘制像素#
在屏幕上绘制像素 块在指定的 (x, y) 屏幕坐标处以当前 画笔颜色 绘制像素。
在屏幕 [0] [0] 上画点
参数 |
描述 |
|---|---|
x |
绘制像素的 x 坐标,范围从 0 到 640。 |
y |
绘制像素的 y 坐标,范围从 0 到 480。 |
例子
当开始
[Draw five pixels in a diagonal.]
在屏幕 [360] [200] 上画点
在屏幕 [340] [220] 上画点
在屏幕 [320] [240] 上画点
在屏幕 [300] [260] 上画点
在屏幕 [280] [280] 上画点
![]()
在屏幕上画线#
在屏幕上绘制线条 模块使用当前的 笔宽 和 笔颜色 从第一个指定的屏幕坐标 (x1, y1) 到第二个指定的屏幕坐标 (x2, y2) 绘制一条线。
在屏幕 [0] [0] [10] [10] 上画线段
参数 |
描述 |
|---|---|
x1 |
行起点的 x 坐标(以像素为单位),范围从 0 到 640。 |
y1 |
线起点的 y 坐标(以像素为单位),范围从 0 到 480。 |
x2 |
线末端的 x 坐标(以像素为单位),范围从 0 到 640。 |
y2 |
线末端的 y 坐标(以像素为单位),范围从 0 到 480。 |
例子
当开始
[Make an X across the screen.]
在屏幕 [0] [0] [640] [480] 上画线段
设定屏幕笔/字体颜色为 [cyan v]
在屏幕 [0] [480] [640] [0] 上画线段

在屏幕上绘制矩形#
在屏幕上绘制矩形 模块使用当前的 画笔宽度、画笔颜色 和 填充颜色 绘制矩形。
在屏幕 [0] [0] [10] [10] 上画矩形
例子
参数 |
描述 |
|---|---|
x |
矩形左上角的 x 坐标(以像素为单位),范围从 0 到 640。 |
y |
矩形左上角的 y 坐标(以像素为单位),范围从 0 到 480。 |
宽度 |
矩形的宽度(以像素为单位)。 |
高度 |
矩形的高度(以像素为单位)。 |
当开始
[Draw two rectangles on the screen.]
在屏幕 [0] [0] [620] [460] 上画矩形
设定屏幕填充色为 [绿色 v]
在屏幕 [200] [180] [200] [100] 上画矩形

在屏幕上画一个圆#
在屏幕上绘制圆形 模块使用当前的 画笔宽度、画笔颜色 和 填充颜色 绘制圆形。
在屏幕 [0] [0] [10] 上画圆形
参数 |
描述 |
|---|---|
x |
圆心的 x 坐标(以像素为单位),范围从 0 到 640。 |
y |
圆心的 y 坐标(以像素为单位),范围从 0 到 480。 |
半径 |
圆的半径(以像素为单位)。 |
例子
当开始
[Draw one green circle on the screen.]
设定屏幕填充色为 [绿色 v]
在屏幕 [320] [240] [200] 上画圆形

触碰#
屏幕被按下?#
屏幕是否被按下? 块报告控制器的屏幕当前是否被按下。此块返回一个布尔值:
True - 屏幕当前被按下
False - 屏幕未被按下
<屏幕按下了?>
参数 |
描述 |
|---|---|
该块没有参数。 |
例子
当开始
[Play a sound when the screen is pressed.]
永久循环
如果 <屏幕按下了?> 那么
播放音符 [低 v] [C v] [note_eight v] ▶
当开始
[Display different messages after the screen is pressed.]
等到 <屏幕按下了?>
在屏幕上打印 [First message!]▶
在屏幕上设定光标至下一行
[Lift finger to press the screen again.]
等到 <非 <屏幕按下了?>>
等到 <屏幕按下了?>
在屏幕上打印 [Second message!]▶
屏幕位置#
屏幕位置 块返回一个整数,表示按下屏幕时的 x 和 y 坐标(以像素为单位)。x 的返回值介于 0(左)和 640(右)之间。y 的返回值介于 0(上)和 480(下)之间。

(屏幕 [X v] 坐标)
参数 |
描述 |
|---|---|
协调 |
最后一次屏幕按下的坐标(以像素为单位):
|
例子
当开始
[Play high or low note based on where screen is pressed.]
永久循环
如果 <屏幕按下了?> 那么
如果 <(屏幕 [X v] 坐标) [math_greater_than v] [320]> 那么
播放音符 [高 v] [C v] [note_eight v] ▶
否则
播放音符 [低 v] [C v] [note_eight v] ▶
当屏幕事件#
当按下或释放控制器的屏幕时,将调用当屏幕事件块。
当屏幕 [pressed v]
参数 |
描述 |
|---|---|
行动 |
确定附加的块堆栈何时运行:
|
例子
当屏幕 [pressed v]
[Play a sound when the screen is pressed.]
播放声音 [成功 v] ▶





