ADC Home > Reference Library > Reference > Mac OS X > Mac OS X Man Pages

 

This document is a Mac OS X manual page. Manual pages are a command-line technology for providing documentation. You can view these manual pages locally using the man(1) command. These manual pages come from many different sources, and thus, have a variety of writing styles.

For more information about the manual page format, see the manual page for manpages(5).



focus(n)                                    Tk Built-In Commands                                    focus(n)



____________________________________________________________________________________________________________

NAME
       focus - Manage the input focus

SYNOPSIS
       focus

       focus window

       focus option ?arg arg ...?
____________________________________________________________________________________________________________


DESCRIPTION
       The  focus  command is used to manage the Tk input focus.  At any given time, one window on each dis-play display
       play is designated as the focus window;  any key press or key release events for the display are sent
       to  that  window.   It is normally up to the window manager to redirect the focus among the top-level
       windows of a display.  For example, some window managers automatically set the input focus to a  top-level toplevel
       level window whenever the mouse enters it;  others redirect the input focus only when the user clicks
       on a window.  Usually the window manager will set the focus only to top-level windows, leaving it  up
       to the application to redirect the focus among the children of the top-level.

       Tk  remembers  one  focus  window for each top-level (the most recent descendant of that top-level to
       receive the focus);  when the window manager gives the focus to a top-level, Tk  automatically  redi-rects redirects
       rects  it  to  the remembered window.  Within a top-level Tk uses an explicit focus model by default.
       Moving the mouse within a top-level does not normally change the focus;  the focus changes only  when
       a  widget  decides  explicitly to claim the focus (e.g., because of a button click), or when the user
       types a key such as Tab that moves the focus.

       The Tcl procedure tk_focusFollowsMouse may be invoked to create an implicit focus model:   it  recon-figures reconfigures
       figures  Tk  so  that  the focus is set to a window whenever the mouse enters it.  The Tcl procedures
       tk_focusNext and tk_focusPrev implement a focus order among the windows of  a  top-level;   they  are
       used in the default bindings for Tab and Shift-Tab, among other things.

       The focus command can take any of the following forms:

       focus  Returns  the  path  name  of the focus window on the display containing the application's main
              window,  or an empty string if no window in this application has the focus  on  that  display.
              Note:  it is better to specify the display explicitly using -displayof (see below) so that the
              code will work in applications using multiple displays.

       focus window
              If the application currently has the input focus on window's display, this command resets  the
              input  focus  for  window's display to window and returns an empty string.  If the application
              doesn't currently have the  input focus on window's display, window will be remembered as  the
              focus  for  its top-level;  the next time the focus arrives at the top-level, Tk will redirect
              it to window.  If window is an empty string then the command does nothing.

       focus -displayof window
              Returns the name of the focus window on the display containing window.  If  the  focus  window
              for window's display isn't in this application, the return value is an empty string.

       focus -force window
              Sets  the  focus of window's display to window, even if the application doesn't currently have
              the input focus for the display.  This command should be used sparingly, if at all.  In normal
              usage,  an application should not claim the focus for itself;  instead, it should wait for the
              window manager to give it the focus.  If window is an empty string then the command does noth-ing. nothing.
              ing.

       focus -lastfor window
              Returns  the  name  of the most recent window to have the input focus among all the windows in
              the same top-level as window.  If no window in that top-level has ever had the input focus, or
              if  the most recent focus window has been deleted, then the name of the top-level is returned.
              The return value is the window that will receive the input focus the next time the window man-ager manager
              ager gives the focus to the top-level.


QUIRKS
       When an internal window receives the input focus, Tk doesn't actually set the X focus to that window;
       as far as X is concerned, the focus will stay on the top-level window containing the window with  the
       focus.  However, Tk generates FocusIn and FocusOut events just as if the X focus were on the internal
       window.   This approach gets around a number of problems that would occur if the X focus  were  actu-ally actually
       ally moved; the fact that the X focus is on the top-level is invisible unless you use C code to query
       the X server directly.


KEYWORDS
       events, focus, keyboard, top-level, window manager



Tk                                                   4.0                                            focus(n)

Did this document help you?
Yes: Tell us what works for you.
It’s good, but: Report typos, inaccuracies, and so forth.
It wasn’t helpful: Tell us what would have helped.