button
Создание примитива кнопки и управление им.
 
  • Синтаксис
  • Стандартные параметры
  • Дополнительные параметры примитива
  • Описание
  • Команда примитива
  •  
    СИНТАКСИС  
    button имяПути параметры
    СТАНДАРТНЫЕ ПАРАМЕТРЫ
     
     
    -activebackground -cursor -highlightthickness
    -takefocus -activeforeground -disabledforeground
    -image text -anchor
    -font -justify -textvariable
    -background -foreground -padx
    -underline -bitmap -highlightbackground
    -pady -wraplength -borderwidth
    -highlightcolor -relief  

    Подробное описание этих параметров приведено в разделе options.

    ДОПОЛНИТЕЛЬНЫЕ ПАРАМЕТРЫ ПРИМИТИВА
      Имя параметра: -command
    Имя в Базе: command
    Класс в Базе: Command  
    Ассоциирует с кнопкой команду Tk. Обычно команда выполняется при отпускании клавиши 1 "Мыши".
    Имя параметра: -default
    Имя в Базе: default
    Класс в Базе: Default
      Задает одно из трех состояний изображения ободка кнопки: normal, active или disabled. В активном состоянии кнопка имеет изображение по умолчанию для данной платформы. В нормальном состоянии кнопка изображается в виде, предусмотренном данной платформой для кнопок не по умолчанию; при этом остается достаточно места для изображения кнопки по умолчанию. Нормальное и активное состояние приводят к появлению кнопок одинакового размера. Отключенное состояние приводит к выводу кнопки не по умолчанию, не оставляя при этом места для кнопки по умолчанию. Кнопка в отключенном состоянии может быть меньше кнопки в активном состоянии.


    Имя параметра: -height
    Имя в Базе: height
    Класс в Базе: Height
     

    Задает желаемую высоту кнопки. Если в кнопке выводится изображение или двуцветное изображение, то значение параметра задается в пикселях (т.е., в любом виде, приемлемом для Tk_GetPixels); высота текстовой кнопки задается числом строчек текста. Если параметр не задан, то высота кнопки вычисляется по ее содержимому.


    Имя параметра: -state
    Имя в Базе: state
    Класс в Базе: State

     
    Задает одно из трех состояний кнопки: normal, active или disabled. В нормальном состоянии кнопка изображается с использованием значений параметров foreground и background. В активном состоянии кнопка обычно находится, если на ней расположен курсор. Кнопка в активном состоянии изображается с использованием значений параметров activeForeground и activeBackground. Отключенное состояние указывает на то, что кнопка должна быть нечувствительной: привязки по умолчанию не приводят к запуску примитива и нажатия на кнопку "Мыши" игнорируются. В этом состоянии изображение кнопки определяется значениями параметров disabledForeground и background .


    Имя параметра: -width
    Имя в Базе: width
    Класс в Базе: Width

     
    Задает желаемую ширину кнопки. Если в кнопке выводится изображение или двуцветное изображение, то значение параметра задается в пикселях (т.е., в любом виде, приемлемом для Tk_GetPixels); ширина текстовой кнопки задается числом символов. Если параметр не задан, то ширина кнопки вычисляется по ее содержимому.


    ОПИСАНИЕ

     
    Команда button создает новое окно (задаваемое аргументом имяПути) и превращает его в примитив кнопки. Детали изображения кнопки, такие, как ее цвета, шрифт, текст и объемный вид задаются с помощью описанных выше дополнительных параметров. Команда button возвращает аргумент имяПути. В момент выполнения этой команды не должно существовать окна с именем имяПути, но должен существовать его предок.

    Кнопка представляет собой примитив, в котором выводится текстовая строка, изображение или двуцветное изображение. Весь выводимый текст должен быть записан одним шрифтом, однако он может занимать несколько строчек на экране (если в нем есть символы перевода строки или задан параметр wrapLength ) . Один из символов текста может быть подчеркнут (в соответствии со значением параметра underline). В зависимости от значения параметра button кнопка имеет три разных вида; кнопка может выглядеть выпуклой, вдавленной или плоской, кроме того, она может мигать. При инициации кнопки (нажатием на клавишу 1 "Мыши", когда курсор "Мыши" находится на кнопке) выполняется команда Tcl, указанная в параметре -command .
     

    КОМАНДА ПРИМИТИВА  
    Команда button создает новую команду Tcl с именем имяПути. С помощью этой команды можно выполнять различные операции над примитивом. Ее общий вид

    имяПути параметр арг арг ...

    Параметр и аргументы уточняют поведение команды. Примитивы кнопки допускают следующие формы команды:

    имяПути cget параметр

    Возвращает текущее значение параметра конфигурации с именем параметр . Параметр может быть любым из параметров команды button . имяПути configure параметр значение параметр значение ... Запрашивает значения параметров конфигурации примитива или изменяет их. Если параметр не указан, то возвращает список, содержащий значения всех допустимых в имениПути параметров (формат списка описан в Tk_ConfigureInfo). Если параметр задан, а его новое значение — нет, то команда возвращает часть полного списка, относящуюся к указанному параметру. Если заданы одна или несколько пар параметр-значение, то указанным параметрам примитива присваиваются новые значения, а команда возвращает пустую строку. Параметр может быть любым из параметров команды button .
     

    имяПути flash

    Заставляет кнопку мигать. Этот эффект достигается путем многократного вывода изображения кнопки поочередно в активном и нормальном состоянии. По окончании работы команды кнопка остается в том же состоянии (активном или нормальном), что и перед началом ее выполнения. Если перед началом выполнения команды кнопка находится в состоянии disabled, то команда игнорируется. имяПути invoke Выполняет команду Tcl, ассоциированную с кнопкой (при наличии такой команды). Возвращаемое значение совпадает с возвращаемым значением команды Tcl (или является пустой строкой, если с кнопкой никакой команды не ассоциировано). Если перед началом выполнения команды кнопка находится в состоянии disabled, то команда игнорируется.


    При создании кнопки Tk, в соответствии с типом кнопки, автоматически создает привязки к ней, определяющие ее поведение по умолчанию:

    Кнопка становится активной при появлении над ней курсора "Мыши" и дезактивируется, когда курсор ее покидает. В системе Windows привязка активизируется только при нажатии клавиши "1" "Мыши" на кнопке.

    При нажатии клавиши "1" "Мыши" на кнопке кнопка "вдавливается", а при отпускании клавиши она восстанавливает свой первоначальный вид.

    Если на кнопке клавиша "1" "Мыши" была нажата, а затем отпущена, то выполняется команда, привязанная к данной кнопке. Этого, однако, не происходит, если в момент отпускания клавиши "Мыши" курсор "Мыши" находился вне поля кнопки.

    Если кнопка находится в фокусе ввода, то нажатие на клавишу пробела приводит к выполнению команды, привязанной к этой кнопке.

    Если кнопка находится в состоянии disabled, то все описанные выше действия не приводят ни к какому результату: кнопка остается неактивной.

    Поведение кнопки можно изменить с помощью новых привязок к конкретным примитивам или путем переопределения привязок данного класса.
     
     


    [ Список команд Tk ]            [ Содержание ]