behavior: terminal
2024-07-18 16:28:18
behavior: terminal
此帮助程序行为实现 ANSI 终端查看器。
该行为维护和呈现 terminal.rows 和 terminal.columns 大小的字符(屏幕缓冲区)的 2D 数组。
Elements
默认情况下,该行为应用于 <terminal>
元素(特定于 Sciter )
<terminal />
Attributes
rows
- 整数,终端缓冲区中的行数(可滚动缓冲区中的行);columns
- 整数,终端缓冲区中的列数(如屏幕宽度中的字符);
如果 columns
未定义属性,则根据元素的当前宽度计算列数。
rows
最大值 and columns
设置为 3000。
Events
与标准事件集(鼠标、键盘、焦点)行为一起:终端生成:
"change"
- 当终端缓冲区的内容发生变化时生成,例如在调用或更改列数或行数之后terminal.write(text)
。"statechange"
- 在插入符号位置变化时生成。"bell"
- 当遇到铃铛 ASCII 字符 (\a
- 代码 7) 时terminal.write(text)
生成。
Value
不适用
Methods
element.terminal.write(text: string)
将文本置于当前插入符号位置。
将当前位置更新为文本末尾。
文本可能包含 ASCII 控制代码。
element.terminal.read([row: int, row: column[, maxLength:int]])
读取当前插入点位置或行/列的缓冲区内容。
element.terminal.resize(rows: int, columns: int)
将内部终端缓冲区的大小调整为行和列大小。
行和列在内部受到 3000 的限制。
element.terminal.clear()
清除内部终端缓冲区的内容。
Properties
element.terminal.rows: int
终端缓冲区中的只读实际行。
element.terminal.columns: int
终端缓冲区中的只读实际列。
element.terminal.caretRow: int
只读,缓冲区内的插入符号位置,行。
element.terminal.caretColumn: int
只读,缓冲区内的插入符号位置,列。