Spec-Zone .ru
спецификации, руководства, описания, API
Spec-Zone .ru
спецификации, руководства, описания, API
Библиотека разработчика Mac Разработчик
Поиск

 

Эта страница руководства для  версии 10.9 Mac OS X

Если Вы выполняете различную версию  Mac OS X, просматриваете документацию локально:

Читать страницы руководства

Страницы руководства предназначаются как справочник для людей, уже понимающих технологию.

  • Чтобы изучить, как руководство организовано или узнать о синтаксисе команды, прочитайте страницу руководства для страниц справочника (5).

  • Для получения дополнительной информации об этой технологии, ищите другую документацию в Библиотеке Разработчика Apple.

  • Для получения общей информации о записи сценариев оболочки, считайте Shell, Пишущий сценарий Учебника для начинающих.



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
              does not 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 is not 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 does not 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 does not actually set the X focus to that win-dow; window;
       dow;  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 actually 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.

EXAMPLE
       To make a window that only participates in the focus traversal ring when a variable is set,  add  the
       following bindings to the widgets before and after it in that focus ring:
              button .before -text "Before"
              button .middle -text "Middle"
              button .after  -text "After"
              checkbutton .flag -variable traverseToMiddle -takefocus 0
              pack .flag -side left
              pack .before .middle .after
              bind .before <Tab> {
                 if {!$traverseToMiddle} {
                    focus .after
                    break
                 }
              }
              bind .after <Shift-Tab> {
                 if {!$traverseToMiddle} {
                    focus .before
                    break
                 }
              }
              focus .before


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



Tk                                                   4.0                                            focus(n)

Сообщение о проблемах

Способ сообщить о проблеме с этой страницей руководства зависит от типа проблемы:

Ошибки содержания
Ошибки отчета в содержании этой документации к проекту Tk.
Отчеты об ошибках
Сообщите об ошибках в функциональности описанного инструмента или API к Apple через Генератор отчетов Ошибки и к проекту Tk через их страницу создания отчетов ошибки.
Форматирование проблем
Отчет, форматирующий ошибки в интерактивной версии этих страниц со ссылками на отзыв ниже.