类
GtkTextView
描述 [src]
class Gtk.TextView : Gtk.Widget
implements Gtk.Accessible, Gtk.AccessibleText, Gtk.Buildable, Gtk.ConstraintTarget, Gtk.Scrollable {
/* No available fields */
}
显示 GtkTextBuffer
内容的小部件。
您可能想先阅读 概念概述,它概述了与文本小部件相关的所有对象和数据类型以及它们如何协同工作。
快捷键与手势
GtkTextView
支持以下键盘快捷键
- Shift+F10 或 Menu 打开上下文菜单。
- Ctrl+Z 撤销最后修改。
- Ctrl+Y 或 Ctrl+Shift+Z可以重做上一步撤销的修改。
此外,以下信号有默认的快捷键:
GtkTextView::backspace
GtkTextView::copy-clipboard
GtkTextView::cut-clipboard
GtkTextView::delete-from-cursor
GtkTextView::insert-emoji
GtkTextView::move-cursor
GtkTextView::paste-clipboard
GtkTextView::select-all
GtkTextView::toggle-cursor-visible
GtkTextView::toggle-overwrite
操作
GtkTextView
定义了一组内置操作
clipboard.copy
将内容复制到剪贴板。clipboard.cut
将内容复制到剪贴板并从小部件中删除。clipboard.paste
将剪贴板的内容插入到小部件中。menu.popup
打开上下文菜单。misc.insert-emoji
打开表情符号选择器。selection.delete
删除当前选择。selection.select-all
选择小部件的所有内容。text.redo
重做对内容的最后更改。text.undo
撤销对内容的最后更改。
CSS 节点
textview.view
├── border.top
├── border.left
├── text
│ ╰── [selection]
├── border.right
├── border.bottom
╰── [window.popup]
GtkTextView
有一个名称为textview且样式类为.view的根CSS节点,以及border窗口的主文本区域,其子节点分别为border和text,分别有多种边框节点,每个都有一个样式类.left、.right、.top或.bottom。
表示选择的节点将出现在文本节点下方。
如果打开上下文菜单,窗口节点将作为主节点的子节点出现。
无障碍访问
GtkTextView
使用GTK_ACCESSIBLE_ROLE_TEXT_BOX
角色。
实例方法
从 GtkAccessible 继承的方法 (19)
gtk_accessible_announce
请求用户屏幕阅读器宣布给定消息。
since: 4.14
gtk_accessible_get_accessible_parent
检索可访问对象的父级。
since: 4.10
gtk_sensitive_get_accessible_role
检索可访问对象的可访问角色。
gtk_sensitive_get_at_context
检索给定可访问对象的实现。
since: 4.10
gtk_sensitive_get_bounds
查询此可访问的坐标和维度。
since: 4.10
gtk_sensitive_get_first_sensitive_child
检索可访问对象的第一个可访问子对象。
since: 4.10
gtk_accessible_get_next_accessible_sibling
获取可访问对象的下一个可访问兄弟对象。
since: 4.10
gtk_accessible_get_platform_state
查询平台状态,例如聚焦。
since: 4.10
gtk_accessible_reset_property
将可访问属性重置为其默认值。
gtk_accessible_reset_relation
将可访问关系重置为其默认值。
gtk_accessible_reset_state
将可访问状态重置为其默认值。
gtk_accessible_set_accessible_parent
设置可访问对象的双亲和兄弟。
since: 4.10
gtk_accessible_update_next_accessible_sibling
更新下一个可访问兄弟。
since: 4.10
gtk_accessible_update_property
更新可访问属性列表。
gtk_accessible_update_property_value
更新可访问属性数组。
gtk_accessible_update_relation
更新可访问关系列表。
gtk_accessible_update_relation_value
更新可访问关系数组。
gtk_accessible_update_state
更新可访问状态列表。
gtk_accessible_update_state_value
更新可访问状态数组。
继承自GtkAccessibleText(3种)的方法
gtk_accessible_text_update_caret_position
更新光标位置。
since: 4.14
gtk_accessible_text_update_contents
通知辅助技术内容发生变化。
since: 4.14
gtk_accessible_text_update_selection_bound
更新选择边界。
since: 4.14
继承自GtkBuildable(1种)的方法
继承自GtkScrollable(9种)的方法
gtk_scrollable_get_border
返回滚动对象外围非滚动边框的大小。
gtk_scrollable_get_hadjustment
检索用于水平滚动的GtkAdjustment
。
gtk_scrollable_get_hscroll_policy
获取水平GtkScrollablePolicy
。
gtk_scrollable_get_vadjustment
检索用于垂直滚动的GtkAdjustment
。
gtk_scrollable_get_vscroll_policy
获取垂直GtkScrollablePolicy
。
gtk_scrollable_set_hadjustment
设置GtkScrollable
的水平调整。
gtk_scrollable_set_hscroll_policy
设置GtkScrollablePolicy
。
gtk_scrollable_set_vadjustment
设置GtkScrollable
的垂直调整。
gtk_scrollable_set_vscroll_policy
设置GtkScrollablePolicy
。
属性
从GtkWidget(34)继承的属性
Gtk.Widget:can-focus
是否小部件或其子代可以使用输入焦点。
Gtk.Widget:can-target
小部件是否可以接收指针事件。
Gtk.Widget:css-classes
应用于此小部件的CSS类列表。
Gtk.Widget:css-name
此小部件在CSS树中的名称。
Gtk.Widget:cursor
由widget使用的光标。
Gtk.Widget:focus-on-click
鼠标点击时,小部件是否应捕获焦点。
Gtk.Widget:focusable
是否此小部件本身将接受输入焦点。
Gtk.Widget:halign
如果小部件得到额外的空间,如何分配水平空间。
Gtk.Widget:has-default
小部件是否为默认小部件。
Gtk.Widget:has-focus
小部件是否具有输入焦点。
Gtk.Widget:has-tooltip
启用或禁用在widget上激发GtkWidget::query-tooltip
信号。
Gtk.Widget:height-request
覆盖小部件的高度请求。
Gtk.Widget:hexpand
是否横向扩展。
Gtk.Widget:hexpand-set
是否使用hexpand
属性。
Gtk.Widget:layout-manager
使用此代码来计算小部件的首选大小,并为其分配子代。
Gtk.Widget:margin-bottom
小部件下侧的边距。
Gtk.Widget:margin-end
小部件结束侧的边距,水平。
Gtk.Widget:margin-start
小部件起始侧的边距,水平。
Gtk.Widget:margin-top
小部件上侧的边距。
Gtk.Widget:name
小部件的名称。
Gtk.Widget:opacity
小部件请求的不透明度。
Gtk.Widget:overflow
如何处理小部件内容区域外的内容。
Gtk.Widget:parent
小部件的父小部件。
Gtk.Widget:receives-default
小部件是否在聚焦时接收默认操作。
Gtk.Widget:root
包含此小部件的小部件树的GtkRoot
小部件。
Gtk.Widget:scale-factor
小部件的缩放因子。
Gtk.Widget:sensitive
小部件是否响应输入。
Gtk.Widget:tooltip-markup
将工具提示的文本设置为指定的字符串,该字符串使用Pango标记。
Gtk.Widget:tooltip-text
设置工具提示的文本为指定的字符串。
Gtk.Widget:valign
如果小部件得到额外的空间,如何分配垂直空间。
Gtk.Widget:vexpand
是否垂直扩展。
Gtk.Widget:vexpand-set
是否使用vexpand
属性。
Gtk.Widget:visible
小部件是否可见。
Gtk.Widget:width-request
覆盖小部件的宽度请求。
从GtkAccessible(1)继承的属性
从GtkScrollable(4)继承的属性
GtkScrollable:hadjustment
可滚动小部件的水平GtkAdjustment
。
GtkScrollable:hscroll-policy
确定何时开始水平滚动。
GtkScrollable:vadjustment
可滚动小部件的垂直GtkAdjustment
。
GtkScrollable:vscroll-policy
确定垂直滚动何时开始。
信号
从 GtkWidget 继承信号(13)
GtkWidget::destroy
当所有拥有该小部件引用的持有者应释放所持有的引用时发出。
GtkWidget::direction-changed
当小部件的文本方向变化时发出。
GtkWidget::hide
当 widget
被隐藏时发出。
GtkWidget::keynav-failed
如果键盘导航失败时发出。
GtkWidget::map
当 widget
即将映射时发出。
GtkWidget::mnemonic-activate
当通过简记符激活小部件时发出。
GtkWidget::move-focus
当焦点移动时发出。
GtkWidget::query-tooltip
当小部件的提示即将显示时发出。
GtkWidget::realize
当 widget
与 GdkSurface
关联时发出。
GtkWidget::show
当 widget
显示时发出。
GtkWidget::state-flags-changed
当小部件状态变化时发出。
GtkWidget::unmap
当 widget
即将取消映射时发出。
GtkWidget::unrealize
当与 widget
关联的 GdkSurface
被销毁时发出。
从 GObject 继承信号(1)
GObject::notify
当通过 g_object_set_property()、g_object_set() 等设置对象的属性值时,在对象上发出 notify 信号。
类结构
struct GtkTextViewClass {
GtkWidgetClass parent_class;
void (* move_cursor) (
GtkTextView* text_view,
GtkMovementStep step,
int count,
gboolean extend_selection
);
void (* set_anchor) (
GtkTextView* text_view
);
void (* insert_at_cursor) (
GtkTextView* text_view,
const char* str
);
void (* delete_from_cursor) (
GtkTextView* text_view,
GtkDeleteType type,
int count
);
void (* backspace) (
GtkTextView* text_view
);
void (* cut_clipboard) (
GtkTextView* text_view
);
void (* copy_clipboard) (
GtkTextView* text_view
);
void (* paste_clipboard) (
GtkTextView* text_view
);
void (* toggle_overwrite) (
GtkTextView* text_view
);
GtkTextBuffer* (* create_buffer) (
GtkTextView* text_view
);
void (* snapshot_layer) (
GtkTextView* text_view,
GtkTextViewLayer layer,
GtkSnapshot* snapshot
);
gboolean (* extend_selection) (
GtkTextView* text_view,
GtkTextExtendSelection granularity,
const GtkTextIter* location,
GtkTextIter* start,
GtkTextIter* end
);
void (* insert_emoji) (
GtkTextView* text_view
);
}
无描述。
类成员
parent_class: GtkWidgetClass
对象类结构需要是第一个。
move_cursor: void (* move_cursor) ( GtkTextView* text_view, GtkMovementStep step, int count, gboolean extend_selection )
处理
GtkTextView::move-cursor
键绑定信号的事件处理函数。set_anchor: void (* set_anchor) ( GtkTextView* text_view )
处理
GtkTextView::set-anchor
键绑定信号的事件处理函数。insert_at_cursor: void (* insert_at_cursor) ( GtkTextView* text_view, const char* str )
处理
GtkTextView::insert-at-cursor
键绑定信号的事件处理函数。delete_from_cursor: void (* delete_from_cursor) ( GtkTextView* text_view, GtkDeleteType type, int count )
GtkTextView
类中用于处理delete-from-cursor
键绑定信号的事件处理器。backspace: void (* backspace) ( GtkTextView* text_view )
GtkTextView
类中用于处理backspace
键绑定信号的事件处理器。cut_clipboard: void (* cut_clipboard) ( GtkTextView* text_view )
GtkTextView
类中用于处理cut-clipboard
键绑定信号的事件处理器。copy_clipboard: void (* copy_clipboard) ( GtkTextView* text_view )
GtkTextView
类中用于处理copy-clipboard
键绑定信号的事件处理器。paste_clipboard: void (* paste_clipboard) ( GtkTextView* text_view )
GtkTextView
类中用于处理paste-clipboard
键绑定信号的事件处理器。toggle_overwrite: void (* toggle_overwrite) ( GtkTextView* text_view )
GtkTextView
类中用于处理toggle-overwrite
键绑定信号的事件处理器。create_buffer: GtkTextBuffer* (* create_buffer) ( GtkTextView* text_view )
调用 create_buffer 虚函数来为文本视图创建一个
GtkTextBuffer
。默认实现仅仅是调用 gtk_text_buffer_new()。snapshot_layer: void (* snapshot_layer) ( GtkTextView* text_view, GtkTextViewLayer layer, GtkSnapshot* snapshot )
在文本视图绘制其自身文本之前和之后调用 snapshot_layer 虚函数。应用程序可以通过在子类中重写此虚函数来在文本下方或上方绘制自定义内容。在
GTK_TEXT_VIEW_LAYER_BELOW_TEXT
和GTK_TEXT_VIEW_LAYER_ABOVE_TEXT
层,绘制是在缓冲区坐标系空间中完成的。extend_selection: gboolean (* extend_selection) ( GtkTextView* text_view, GtkTextExtendSelection granularity, const GtkTextIter* location, GtkTextIter* start, GtkTextIter* end )
GtkTextView
类中用于处理extend-selection
信号的事件处理器。insert_emoji: void (* insert_emoji) ( GtkTextView* text_view )
GtkTextView
类中用于处理insert-emoji
信号的事件处理器。
虚方法
Gtk.TextViewClass.create_buffer
调用 create_buffer 虚函数来为文本视图创建一个 GtkTextBuffer
。默认实现仅仅是调用 gtk_text_buffer_new()。
Gtk.TextViewClass.snapshot_layer
在文本视图绘制其自身文本之前和之后调用 snapshot_layer 虚函数。应用程序可以通过在子类中重写此虚函数来在文本下方或上方绘制自定义内容。在 GTK_TEXT_VIEW_LAYER_BELOW_TEXT
和 GTK_TEXT_VIEW_LAYER_ABOVE_TEXT
层,绘制是在缓冲区坐标系空间中完成的。