import { TextEdit, VerticalBox } from "std-widgets.slint";export component Example inherits Window { width: 200px; height: 200px;
VerticalBox { TextEdit { font-size: 14px; text: "Lorem ipsum dolor sit amet,\n consectetur adipisici elit"; } }}
类似于 LineEdit,但可用于输入多行文本
属性
font-size
length default: 0px
输入文本的字体大小。
font-family
string default: ""
选择用于渲染文本的字体族名称。
font-italic
bool default: false
输入文本字体的斜体状态
text
string (in-out) default: ""
正在编辑的文本
TextEdit { text: "Initial text";}has-focus
bool (out) default: false
当该控件当前拥有焦点时设置为 true。
enabled
bool default: true
当为 false 时,无法输入任何内容。
read-only
bool default: false
当设置为 true 时,通过键盘和鼠标进行的文本编辑被禁用,但仍可以选择文本,也可以通过编程方式编辑文本。
wrap
enum TextWrap default: the first enum value
文本换行方式(默认:按词换行)。
TextWrap
此枚举描述当文本宽度超过 Text 或 StyledText 元素宽度时文本的换行方式。
no-wrap:文本将不换行,而是会溢出。word-wrap:如果可能,文本将在词边界处换行;如果是过长的单词,则在任何位置换行。char-wrap:文本将在任意字符处换行。目前仅 Qt 和软件渲染器支持。
horizontal-alignment
enum TextHorizontalAlignment default: the first enum value
文本的水平对齐方式。
TextHorizontalAlignment
此枚举描述 Text 或 StyledText 元素沿水平轴的对齐方式。
start:文本将与包含盒的起始边对齐。根据文本方向,可能是左对齐或右对齐。end:文本将与包含盒的结束边对齐。根据文本方向,可能是左对齐或右对齐。left:文本将与包含盒的左边缘对齐。center:文本将在包含盒内水平居中。right:文本将与包含盒的右边缘对齐。
placeholder-text
string (in) default: ""
当编辑字段中没有文本时显示的占位文本。
viewport-width
length (in-out) default: 0px
文本编辑的视口宽度。
viewport-height
length (in-out) default: 0px
文本编辑的视口高度。
viewport-x
length (in-out) default: 0px
相对于文本编辑的视口 x 位置。通常为负值。
viewport-y
length (in-out) default: 0px
相对于文本编辑的视口 y 位置。通常为负值。
visible-width
length (out) default: 0px
文本编辑的可见区域宽度(不包括滚动条)
visible-height
length (out) default: 0px
文本编辑的可见区域高度(不包括滚动条)
函数
focus()调用此函数以使 TextEdit 获得焦点并接收将来的键盘事件。clear-focus()调用此函数以从该TextEdit中移除键盘焦点(如果当前拥有焦点)。另请参阅 焦点处理。set-selection-offsets(int, int)选择两个 UTF-8 偏移量之间的文本。select-all()选择所有文本。clear-selection()清除选择。无论read-only和enabled属性如何,此函数都会生效。copy()将所选文本复制到剪贴板。cut()将所选文本复制到剪贴板并将其从可编辑区域中移除。无论read-only和enabled属性如何,此函数都会生效。paste()在光标位置粘贴剪贴板的文本内容。无论read-only和enabled属性如何,此函数都会生效。
回调
edited(string)
当用户修改导致文本发生变化时触发
TextEdit { edited(text) => { debug("Edited: ", text); }}key-pressed(KeyEvent) -> EventResult
当按键被按下时调用,参数是一个 KeyEvent 结构体。使用此回调可在 TextEdit 处理之前处理按键。返回 accept 表示你已处理该事件,返回 reject 则让 TextEdit 处理。
key-released(KeyEvent) -> EventResult
当按键被释放时调用,参数是一个 KeyEvent 结构体。使用此回调可在 TextEdit 处理之前处理按键。返回 accept 表示你已处理该事件,返回 reject 则让 TextEdit 处理。