---
name: "XtSetKeyboardFocus"
section: "3x"
platform: "linux"
package: "libxt-dev"
version: "4.3.0.dfsg.1-14sarge7"
release: "Debian 3.1 (Sarge)"
platforms: ["linux"]
url: "https://new.carta.tech/XtSetKeyboardFocus/3x"
---

# XtSetKeyboardFocus(3x)

focus events on a child widget

## NAME

XtSetKeyboardFocus - focus events on a child widget

## SYNTAX

XtSetKeyboardFocus(Widget *subtree*, Widget *descendant*);

## ARGUMENTS

- *subtree*

  Specifies either the widget in the subtree structure which is to receive the  keyboard event, or  *None*. Note that it is not an error to specify *None* when no input focus was previously set.

- *descendant*

  Specifies the widget for which the keyboard focus is to be set.

## DESCRIPTION

If a future  *KeyPress* or *KeyRelease* event occurs within the specified subtree, *XtSetKeyboardFocus* causes *XtDispatchEvent* to remap and send the event to the specified descendant widget.

When there is no modal cascade, keyboard events can occur within a widget W in one of three ways:

- •

  W has the X input focus.

- •

  W has the keyboard focus of one of its ancestors, and the event occurs within the ancestor or one of the ancestor's descendants.

- •

  No ancestor of W has a descendant within the keyboard focus, and the pointer is within W.

When there is a modal cascade, a widget W receives keyboard events if an ancestor of W is in the active subset of the modal cascade and one or more of the previous conditions is *True*.

When subtree or one of its descendants acquires the X input focus or the pointer moves into the subtree such that keyboard events would now be delivered to subtree, a *FocusIn* event is generated for the descendant if *FocusNotify* events have been selected by the descendant. Similarly, when W loses the X input focus or the keyboard focus for one of its ancestors, a *FocusOut* event is generated for descendant if *FocusNotify* events have been selected by the descendant.

## SEE ALSO

XtCallAcceptFocus(3Xt)\
 *X Toolkit Intrinsics - C Language Interface*\
 *Xlib - C Language X Interface*
