屏幕#
介绍#
VEX AIM 编程机器人的屏幕提供了用于显示文本、管理光标、绘制形状和处理触摸交互的模块。
以下是所有模块的列表:
光标打印 — 使用行列光标系统管理文本显示。
在屏幕上打印 — 在屏幕上当前光标位置显示文本。
将光标设置到屏幕上的行列 — 将光标移动到指定的行和列。
将光标设置到屏幕上的下一行 — 将光标移动到下一行的第 1 列。
清除屏幕上的行 — 清除指定的一行文本。
屏幕光标列 — 返回要打印文本的列号。
屏幕光标行 — 返回要打印文本的行号。
XY 打印 — 按像素坐标打印文本。
在屏幕上的坐标处打印 — 在指定的 x 和 y 坐标处显示文本。
设置屏幕原点 — 更改绘图和打印使用的原点。
设置 — 自定义文本格式和屏幕显示。
清除屏幕 — 清除屏幕上的所有文字和图画。
填充屏幕 — 清除屏幕上的所有文字和图形,然后设置屏幕的背景颜色。
设置屏幕字体 — 更改文本显示的字体类型和大小。
设置屏幕上的打印精度 — 调整打印数字的小数位数。
设置屏幕上的笔宽 — 调整绘制线条的粗细。
设置屏幕上的笔/字体颜色 — 更改文本和绘图的颜色。
设置屏幕填充颜色 — 定义形状的填充颜色。
绘图——创建图形和视觉元素。
在屏幕上显示图像文件 — 在屏幕上显示用户上传的图像。
在屏幕上绘制像素 — 在指定坐标处绘制单个像素。
在屏幕上绘制线条 — 在两点之间绘制一条线。
在屏幕上绘制矩形 — 绘制一个具有指定尺寸的矩形。
在屏幕上绘制圆 — 绘制一个具有给定半径的圆。
触摸 — 检测屏幕交互。
光标打印#
屏幕打印#
在屏幕上打印 模块会在机器人的屏幕上显示当前 光标位置 和 字体 处的文本。
在屏幕上打印 [VEXcode]▶
参数 |
描述 |
|---|---|
价值 |
要在屏幕上显示的文本、数字或变量值。 |
扩大箭头 |
展开代码块以读取并将光标设置为下一行,使光标移动到此代码块之后的下一行。 |
例子
当开始
[Display a message at the starting cursor position.]
在屏幕上打印 [Hello, Robot!]▶

将光标设置到屏幕上的行列#
使用“将光标设置到屏幕上的行和列”模块时,光标会放置在屏幕上的特定行和列。可舒适显示的行数和列数取决于所选字体。使用默认的等宽中等字体,最多可以清晰显示 8 行和 13 列。超出此范围的文本可能会被截断或难以阅读。
等宽字体的所有字符宽度相同,因此文本位置保持一致。相比之下,比例字体的字符宽度各不相同,因此有些字母比其他字母占用更多空间。但是,无论使用哪种字体,“将光标设置为屏幕上的行/列”模块都会根据行和列的大小(而#set-font-on-screen字体样式)来定位光标。可以使用“将字体设置为屏幕上的字体”模块来调整字体大小。
在屏幕上设定光标至 [1] 行 [1] 列
参数 |
描述 |
|---|---|
排 |
游标所在行。 |
柱子 |
光标所在的列。 |
示例
当开始
[Display text starting at Row 3 Column 2.]
在屏幕上设定光标至 (3) 行 (2) 列
在屏幕上打印 [Row 3, Column 2]▶

当开始
[Display cargo amounts in an organized list.]
设定屏幕字体为 [比例字体 v] [大 v]
在屏幕上打印 [Sports Balls]◀ 并设定光标为下一行
在屏幕上打印 [Orange Barrels]◀ 并设定光标为下一行
在屏幕上打印 [Blue Barrels]▶
在屏幕上设定光标至 [1] 行 [11] 列
在屏幕上打印 [2]▶
在屏幕上设定光标至 [2] 行 [11] 列
在屏幕上打印 [3]▶
在屏幕上设定光标至 [3] 行 [11] 列
在屏幕上打印 [3]▶

当开始
[Display the ID of the detected AprilTag.]
设定屏幕字体为 [比例字体 v] [特大 v]
永久循环
清屏
在屏幕上打印 [AprilTag]▶
从 AI 视觉仪获取 [所有AprilTags v] 数据
如果 <AI 视觉仪对象存在?> 那么
在屏幕上设定光标至 [3] 行 [4] 列
在屏幕上打印 (AI 视觉仪对象 [tagID v])▶
结束
等待 [0.1] 秒

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

屏幕上的清除行#
清除屏幕上的行 模块会清除机器人屏幕上的一行文本。
清除屏幕第 [1] 行
参数 |
描述 |
|---|---|
排 |
要清除的行号。 |
例子
当开始
[Display text on two rows.]
在屏幕上打印 [This text stays]▶
在屏幕上设定光标至下一行
在屏幕上打印 [This text disappears]▶
等待 [3] 秒
清除屏幕第 [2] 行
屏幕光标列#
屏幕光标列块返回将以整数形式打印文本的列号。
(屏幕光标列数)
参数 |
描述 |
|---|---|
该块没有参数。 |
例子
当开始
[Display the cursor's current column.]
在屏幕上设定光标至 [3] 行 [2] 列
在屏幕上打印 (屏幕光标列数)▶

屏幕光标行#
屏幕光标行块返回将以整数形式打印文本的行号。
(屏幕光标行数)
参数 |
描述 |
|---|---|
该块没有参数。 |
例子
当开始
[Display the cursor's current row.]
在屏幕上设定光标至 [3] 行 [2] 列
在屏幕上打印 (屏幕光标行数)▶

XY打印#
在屏幕上的坐标处打印#
在屏幕上的坐标处打印 块会在机器人屏幕上指定的 x 和 y 坐标(以像素为单位)处显示文本,字体为当前设置的 font。
在屏幕x:[80] y:[120]上打印 [VEXcode]
参数 |
描述 |
|---|---|
价值 |
要在屏幕上显示的文本、数字或变量值。 |
x |
x 坐标(以像素为单位)(0 到 240,其中 0 为左,240 为右)。 |
y |
y 坐标(以像素为单位)(0 到 240,其中 0 为顶部,240 为底部)。 |
例子
当开始
[Display a message in the middle of the screen.]
在屏幕x:[40] y:[120]上打印 [Hello, Robot!]

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

设置#
清除屏幕#
清除屏幕块清除机器人屏幕上的所有图形和文本,并将光标位置重置为第 1 行、第 1 列。
清屏
参数 |
描述 |
|---|---|
该块没有参数。 |
例子
当开始
[Draw a circle, and clear it after 2 seconds.]
在屏幕 [120] [120] [40] 上画圆形
等待 [2] 秒
清屏
填满屏幕#
填充屏幕块清除机器人屏幕上的所有图形和文本,然后将背景更改为指定的颜色。
屏幕填充色为 [红色 v]
参数 |
描述 |
|---|---|
颜色 |
将背景颜色更改为:
|
例子
当开始
[Say "Hello" then turn screen yellow.]
在屏幕上打印 [Hello]▶
等待 [2] 秒
屏幕填充色为 [yellow v]
设置屏幕上的字体#
“设置屏幕字体”模块用于设置机器人屏幕上显示文本的字体和字号。此字体将应用于之后所有打印的文本。
设定屏幕字体为 [等宽字体 v] [超小 v]
参数 |
描述 |
|---|---|
类型 |
字体类型:
|
尺寸 |
字体大小(如下所示):
|
|
与上一张图片相同,但字体为 Mono 15。字母 AT 占据一行文字。底部文字为 20 个字符宽,12 行。(/_static/img/fonts/mono15.png) |
与上一张图片相同,但字体为 Mono 20。字母 AP 占据一行文字。底部文字为 16 个字符宽,共 9 行。(/_static/img/fonts/mono20.png) |
|---|---|---|
与上一张图片相同,但字体为 Mono 24。字母 AM 占据一行文字。底部文字横向 13 个字符,共 8 行。(/_static/img/fonts/mono24.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]
参数 |
描述 |
|---|---|
宽度 |
笔的宽度(以像素为单位),范围从 0 到 32。 |
例子
当开始
[Draw a rectangle with a pen width of 10.]
设定屏幕笔宽为 [10]
在屏幕 [50] [50] [130] [60] 上画矩形

设置屏幕上的笔/字体颜色#
设置屏幕上的笔/字体颜色 模块用于设置机器人屏幕上绘制线条、形状和文本时使用的笔颜色。
设定屏幕笔/字体颜色为 [红色 v]
参数 |
描述 |
|---|---|
颜色 |
将笔颜色设置为:
|
例子
当开始
[Draw a rectangle with a red pen.]
设定屏幕笔/字体颜色为 [红色 v]
在屏幕 [50] [50] [130] [60] 上画矩形

设置屏幕填充颜色#
设置屏幕填充颜色 模块用于设置绘制形状时使用的填充颜色。
设定屏幕填充色为 [红色 v]
参数 |
描述 |
|---|---|
颜色 |
将填充颜色设置为:
|
示例
当开始
[Draw two orange rectangles.]
设定屏幕填充色为 [orange v]
在屏幕 [50] [50] [100] [60] 上画矩形
在屏幕 [50] [130] [100] [60] 上画矩形

当开始
[Display text with a purple background.]
设定屏幕填充色为 [purple v]
在屏幕上打印 [Highlight]▶

画#
在屏幕上显示图像文件#
在屏幕上显示图像文件 模块会在机器人的屏幕上绘制用户上传的自定义图像。
显示图像文件 [1 v]
参数 |
描述 |
|---|---|
图像槽号 |
要使用的自定义图像,编号 1 到 10。图像编号与 AIM 控制面板中显示的数字一致。 |
例子
当开始
[Draw uploaded Image 1.]
显示图像文件 [1 v]
在屏幕上绘制像素#
在屏幕上绘制像素 块在指定的 (x, y) 屏幕坐标处以当前 画笔颜色 绘制像素。
在屏幕 [0] [0] 上画点
参数 |
描述 |
|---|---|
x |
绘制像素的 x 坐标。 |
y |
绘制像素的 y 坐标。 |
例子
当开始
[Draw a pixel at the center of the screen.]
在屏幕 [120] [120] 上画点
![]()
在屏幕上画线#
在屏幕上绘制线条 模块使用当前的 笔宽 和 笔颜色 从第一个指定的屏幕坐标 (x1, y1) 到第二个指定的屏幕坐标 (x2, y2) 绘制一条线。
在屏幕 [0] [0] [10] [10] 上画线段
参数 |
描述 |
|---|---|
x1 |
线起点的 x 坐标(以像素为单位)。 |
y1 |
线起点的 y 坐标(以像素为单位)。 |
x2 |
线末端的 x 坐标(以像素为单位)。 |
y2 |
线末端的 y 坐标(以像素为单位)。 |
例子
当开始
[Draw a line from the top left to bottom right of the screen.]
在屏幕 [0] [0] [240] [240] 上画线段

在屏幕上绘制矩形#
在屏幕上绘制矩形 模块使用当前的 画笔宽度、画笔颜色 和 填充颜色 绘制矩形。
在屏幕 [0] [0] [10] [10] 上画矩形
参数 |
描述 |
|---|---|
x |
矩形左上角的 x 坐标(以像素为单位)。 |
y |
矩形左上角的 y 坐标(以像素为单位)。 |
宽度 |
矩形的宽度(以像素为单位)。 |
高度 |
矩形的高度(以像素为单位)。 |
例子
当开始
[Draw a rectangle on the screen.]
在屏幕 [50] [50] [130] [60] 上画矩形

在屏幕上画一个圆#
在屏幕上绘制圆形 模块使用当前的 画笔宽度、画笔颜色 和 填充颜色 绘制圆形。
在屏幕 [0] [0] [10] 上画圆形
参数 |
描述 |
|---|---|
x |
圆心的 x 坐标(以像素为单位)。 |
y |
圆心的 y 坐标(以像素为单位)。 |
半径 |
圆的半径(以像素为单位)。 |
例子
当开始
[Draw a circle on the screen.]
在屏幕 [120] [120] [40] 上画圆形

触碰#
屏幕被按下?#
屏幕是否被按下? 模块返回机器人的屏幕当前是否被按下。该模块返回一个布尔值:
正确——屏幕目前正被按下
错误——屏幕未被按下
<屏幕按下了?>
参数 |
描述 |
|---|---|
该块没有参数。 |
例子
当开始
[Turn LEDs white only when the screen is pressed.]
永久循环
如果 <屏幕按下了?> 那么
设定 [lightall v] LED 颜色为 [white v]
否则
设定 [lightall v] LED 颜色为 [灭 v]
结束
结束
屏幕位置#
屏幕位置 块返回一个整数,表示按下屏幕时的 x 和 y 坐标(以像素为单位)。x 的返回值介于 0(左)和 240(右)之间。y 的返回值介于 0(上)和 240(下)之间。

(屏幕 [X v] 坐标)
参数 |
描述 |
|---|---|
协调 |
上次屏幕点击的坐标(像素):
|
例子
当开始
[Display the x and y coordinate of where the screen is pressed.]
永久循环
如果 <屏幕按下了?> 那么
清屏
在屏幕上打印 (屏幕 [X v] 坐标)▶
在屏幕上设定光标至下一行
在屏幕上打印 (屏幕 [y v] 坐标)▶
结束
结束
当屏幕事件#
当机器人的屏幕被按下或不再被按下时,将调用当屏幕事件块。
当屏幕 [pressed v]
参数 |
描述 |
|---|---|
行动 |
决定何时执行所连接的代码块堆栈:
|
例子
当屏幕 [pressed v]
[Set the LEDs to green when the screen is pressed.]
设定 [lightall v] LED 颜色为 [绿色 v]







