方法

GtkWidgetkeynav_failed

声明 [src]

gboolean
gtk_widget_keynav_failed (
  GtkWidget* widget,
  GtkDirectionType direction
)

描述 [src]

在 widget 上发出 GtkWidget::keynav-failed 信号。

每当在单个 widget 内部进行键盘导航碰到边界时,应该调用此函数。

此函数的返回值应类似于函数 gtk_widget_child_focus() 的返回值。当返回 true 时,保持在小部件内,失败的键盘导航是正常的,或者没有其他地方可以/应该将焦点移动到。当返回 false 时,调用者应继续键盘导航,例如通过在小部件的顶级调用 gtk_widget_child_focus()

默认的 GtkWidget::keynav-failed 处理器对 GTK_DIR_TAB_FORWARDGTK_DIR_TAB_BACKWARD 返回 false。对于 GtkDirectionType 的其他值,返回 true。

每次默认处理器返回 true 时,它还调用 gtk_widget_error_bell() 通知用户失败的键盘导航。

提供自己对 ::keynav-failed 的实现(通过连接到它或覆盖它)的一个用例是一个 GtkEntry 小部件的行,用户应该能够使用光标键导航整个行,例如,在需要输入许可密钥的用户界面中。

参数

direction

类型: GtkDirectionType

焦点移动方向。

返回值

类型: gboolean

如果停止键盘导航是适当的,则为 true;如果发出信号的 widget 应该尝试在其父 widget 中处理键盘导航尝试,则为 false。