2018-02-05 17:22:04 +03:00
|
|
|
|
<!DOCTYPE HTML PUBLIC -//W3C//DTD HTML 4.01 Transitional//EN>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
<html>
|
|
|
|
|
<head>
|
|
|
|
|
<title>button</title>
|
|
|
|
|
</head>
|
|
|
|
|
<body>
|
|
|
|
|
|
|
|
|
|
<h1>button</h1>
|
|
|
|
|
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<p>Создание примитива кнопки и управление им.</p>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<h2><a name=СИНТАКСИС></a>СИНТАКСИС</h2>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
|
|
|
|
|
<pre>
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<strong>button</strong> <em>имяПути параметры</em>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
</pre>
|
|
|
|
|
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<h2><a name=СТАНДАРТНЫЕ_ПАРАМЕТРЫ></a>СТАНДАРТНЫЕ ПАРАМЕТРЫ</h2>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
|
|
|
|
|
<ul>
|
|
|
|
|
<li>-activebackground</li>
|
|
|
|
|
<li>-activeforeground</li>
|
|
|
|
|
<li>-anchor</li>
|
|
|
|
|
<li>-background</li>
|
|
|
|
|
<li>-bitmap</li>
|
|
|
|
|
<li>-borderwidth</li>
|
|
|
|
|
<li>-cursor</li>
|
|
|
|
|
<li>-disabledforeground</li>
|
|
|
|
|
<li>-font</li>
|
|
|
|
|
<li>-highlightbackground</li>
|
|
|
|
|
<li>-highlightcolor</li>
|
|
|
|
|
<li>-highlightthickness</li>
|
|
|
|
|
<li>-image</li>
|
|
|
|
|
<li>-justify</li>
|
|
|
|
|
<li>-padx</li>
|
|
|
|
|
<li>-pady</li>
|
|
|
|
|
<li>-relief</li>
|
|
|
|
|
<li>-takefocus</li>
|
|
|
|
|
<li>-text</li>
|
|
|
|
|
<li>-textvariable</li>
|
|
|
|
|
<li>-underline</li>
|
|
|
|
|
<li>-wraplength</li>
|
|
|
|
|
</ul>
|
|
|
|
|
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<p>Подробное описание этих параметров приведено в разделе
|
|
|
|
|
<a href=options.html><strong>options</strong></a>.</p>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<h2><a name=ДОПОЛНИТЕЛЬНЫЕ_ПАРАМЕТРЫ></a>ДОПОЛНИТЕЛЬНЫЕ ПАРАМЕТРЫ</h2>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
|
|
|
|
|
<table>
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<tr><td>Имя параметра:</td><td><strong>-command</strong></td></tr>
|
|
|
|
|
<tr><td>Имя в Базе:</td><td><strong>command</strong></td></tr>
|
|
|
|
|
<tr><td>Класс в Базе:</td><td><strong>Command</strong></td></tr>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
</table>
|
|
|
|
|
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<p>Ассоциирует с кнопкой команду Tk. Обычно команда выполняется
|
|
|
|
|
при отпускании клавиши 1 "Мыши".</p>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
|
|
|
|
|
<table>
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<tr><td>Имя параметра:</td><td><strong>-default</strong></td></tr>
|
|
|
|
|
<tr><td>Имя в Базе:</td><td><strong>default</strong></td></tr>
|
|
|
|
|
<tr><td>Класс в Базе:</td><td><strong>Default</strong></td></tr>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
</table>
|
|
|
|
|
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<p>Задает одно из трех состояний изображения ободка кнопки:
|
|
|
|
|
<strong>normal</strong>, <strong>active</strong> или
|
|
|
|
|
<strong>disabled</strong>. В активном состоянии кнопка имеет
|
|
|
|
|
изображение по умолчанию для данной платформы. В нормальном
|
|
|
|
|
состоянии кнопка изображается в виде, предусмотренном данной
|
|
|
|
|
платформой для кнопок не по умолчанию; при этом остается
|
|
|
|
|
достаточно места для изображения кнопки по умолчанию. Нормальное
|
|
|
|
|
и активное состояние приводят к появлению кнопок одинакового
|
|
|
|
|
размера. Отключенное состояние приводит к выводу кнопки не по
|
|
|
|
|
умолчанию, не оставляя при этом места для кнопки по умолчанию.
|
|
|
|
|
Кнопка в отключенном состоянии может быть меньше кнопки в
|
|
|
|
|
активном состоянии.</p>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
|
|
|
|
|
<table>
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<tr><td>Имя параметра:</td><td><strong>-height</strong></td></tr>
|
|
|
|
|
<tr><td>Имя в Базе:</td><td><strong>height</strong></td></tr>
|
|
|
|
|
<tr><td>Класс в Базе:</td><td><strong>Height</strong></td></tr>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
</table>
|
|
|
|
|
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<p>Задает желаемую высоту кнопки. Если в кнопке выводится
|
|
|
|
|
изображение или двуцветное изображение, то значение параметра
|
|
|
|
|
задается в пикселях (т.е., в любом виде, приемлемом для
|
|
|
|
|
<strong>Tk_GetPixels</strong>); высота текстовой кнопки задается числом
|
|
|
|
|
строчек текста. Если параметр не задан, то высота кнопки
|
|
|
|
|
вычисляется по ее содержимому.</p>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
|
|
|
|
|
<table>
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<tr><td>Имя параметра:</td><td><strong>-state</strong></td></tr>
|
|
|
|
|
<tr><td>Имя в Базе:</td><td><strong>state</strong></td></tr>
|
|
|
|
|
<tr><td>Класс в Базе:</td><td><strong>State</strong></td></tr>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
</table>
|
|
|
|
|
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<p>Задает одно из трех состояний кнопки: <strong>normal</strong>,
|
|
|
|
|
<strong>active</strong> или <strong>disabled</strong>. В
|
|
|
|
|
нормальном состоянии кнопка изображается с использованием
|
|
|
|
|
значений параметров <strong>foreground</strong> и
|
|
|
|
|
<strong>background</strong>. В активном состоянии кнопка обычно
|
|
|
|
|
находится, если на ней расположен курсор. Кнопка в активном
|
|
|
|
|
состоянии изображается с использованием значений параметров
|
|
|
|
|
<strong>activeForeground</strong> и
|
|
|
|
|
<strong>activeBackground</strong>. Отключенное состояние
|
|
|
|
|
указывает на то, что кнопка должна быть нечувствительной:
|
|
|
|
|
привязки по умолчанию не приводят к запуску примитива и нажатия
|
|
|
|
|
на кнопку "Мыши" игнорируются. В этом состоянии
|
|
|
|
|
изображение кнопки определяется значениями параметров
|
|
|
|
|
<strong>disabledForeground</strong> и
|
2015-10-19 13:27:31 +03:00
|
|
|
|
<strong>background</strong>.
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
|
|
<table>
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<tr><td>Имя параметра:</td><td><strong>-width</strong></td></tr>
|
|
|
|
|
<tr><td>Имя в Базе:</td><td><strong>width</strong></td></tr>
|
|
|
|
|
<tr><td>Класс в Базе:</td><td><strong>Width</strong></td></tr>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
</table>
|
|
|
|
|
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<p>Задает желаемую ширину кнопки. Если в кнопке выводится
|
|
|
|
|
изображение или двуцветное изображение, то значение параметра
|
|
|
|
|
задается в пикселях (т.е., в любом виде, приемлемом для
|
|
|
|
|
<strong>Tk_GetPixels</strong>); ширина текстовой кнопки задается
|
|
|
|
|
числом символов. Если параметр не задан, то ширина кнопки
|
|
|
|
|
вычисляется по ее содержимому.</p>
|
|
|
|
|
|
|
|
|
|
<h2><a name=ОПИСАНИЕ></a>ОПИСАНИЕ</h2>
|
|
|
|
|
|
|
|
|
|
<p>Команда <strong>button</strong> создает новое окно (задаваемое
|
|
|
|
|
аргументом <em>имяПути</em>) и превращает его в примитив кнопки.
|
|
|
|
|
Детали изображения кнопки, такие, как ее цвета, шрифт, текст и
|
|
|
|
|
объемный вид задаются с помощью описанных выше дополнительных
|
|
|
|
|
параметров. Команда <strong>button</strong> возвращает аргумент
|
|
|
|
|
<em>имяПути</em>. В момент выполнения этой команды не должно
|
|
|
|
|
существовать окна с именем <em>имяПути</em>, но должен
|
|
|
|
|
существовать его предок.</p>
|
|
|
|
|
|
|
|
|
|
<p>Кнопка представляет собой примитив, в котором выводится
|
|
|
|
|
текстовая строка, изображение или двуцветное изображение. Весь
|
|
|
|
|
выводимый текст должен быть записан одним шрифтом, однако он
|
|
|
|
|
может занимать несколько строчек на экране (если в нем есть
|
|
|
|
|
символы перевода строки или задан параметр
|
|
|
|
|
<strong>wrapLength</strong>). Один из символов текста может
|
|
|
|
|
быть подчеркнут (в соответствии со значением параметра
|
|
|
|
|
<strong>underline</strong>). В зависимости от значения параметра
|
|
|
|
|
<strong>button</strong> кнопка имеет три разных вида; кнопка
|
|
|
|
|
может выглядеть выпуклой, вдавленной или плоской, кроме того,
|
|
|
|
|
она может мигать. При инициации кнопки (нажатием на клавишу 1
|
|
|
|
|
"Мыши", когда курсор "Мыши" находится на
|
|
|
|
|
кнопке) выполняется команда Tcl, указанная в параметре
|
2015-10-19 13:27:31 +03:00
|
|
|
|
<strong>-command</strong>.</p>
|
|
|
|
|
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<h2><a name=КОМАНДА_ПРИМИТИВА></a>КОМАНДА ПРИМИТИВА</h2>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<p>Команда <strong>button</strong> создает новую команду Tcl с
|
|
|
|
|
именем <em>имяПути</em>. С помощью этой команды можно выполнять
|
|
|
|
|
различные операции над примитивом. Ее общий вид.</p>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
|
|
|
|
|
<pre>
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<strong>имяПути</strong> <em>параметр арг арг</em> ...
|
2015-10-19 13:27:31 +03:00
|
|
|
|
</pre>
|
|
|
|
|
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<p><em>Параметр</em> и <em>арг</em>ументы уточняют поведение команды.
|
|
|
|
|
Примитивы кнопки допускают следующие формы команды:</p>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
|
|
|
|
|
<pre>
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<em>имяПути</em> <strong>cget</strong> <em>параметр</em>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
</pre>
|
|
|
|
|
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<p>Возвращает текущее значение параметра конфигурации с именем
|
|
|
|
|
параметр. Параметр может быть любым из параметров команды
|
2015-10-19 13:27:31 +03:00
|
|
|
|
<strong>button</strong>.</p>
|
|
|
|
|
|
|
|
|
|
<pre>
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<em>имяПути</em> <strong>configure</strong> <em>параметр значение параметр значение ...</em>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
</pre>
|
|
|
|
|
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<p>Запрашивает значения параметров конфигурации примитива или
|
|
|
|
|
изменяет их. Если параметр не указан, то возвращает список,
|
|
|
|
|
содержащий значения всех допустимых в <em>имениПути</em>
|
|
|
|
|
параметров (формат списка описан в
|
|
|
|
|
<strong>Tk_ConfigureInfo</strong>). Если <em>параметр</em>
|
|
|
|
|
задан, а его новое значение - нет, то команда возвращает часть
|
|
|
|
|
полного списка, относящуюся к указанному параметру. Если заданы
|
|
|
|
|
одна или несколько пар параметр-значение, то указанным
|
|
|
|
|
параметрам примитива присваиваются новые значения, а команда
|
|
|
|
|
возвращает пустую строку. <em>Параметр</em> может быть любым из
|
|
|
|
|
параметров команды <strong>button</strong>.</p>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
|
|
|
|
|
<pre>
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<em>имяПути</em> <strong>flash</strong>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
</pre>
|
|
|
|
|
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<p>Заставляет кнопку мигать. Этот эффект достигается путем
|
|
|
|
|
многократного вывода изображения кнопки поочередно в активном и
|
|
|
|
|
нормальном состоянии. По окончании работы команды кнопка
|
|
|
|
|
остается в том же состоянии (активном или нормальном), что и
|
|
|
|
|
перед началом ее выполнения. Если перед началом выполнения
|
|
|
|
|
команды кнопка находится в состоянии <strong>disabled</strong>,
|
|
|
|
|
то команда игнорируется.</p>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
|
|
|
|
|
<pre>
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<em>имяПути</em> <strong>invoke</strong>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
</pre>
|
|
|
|
|
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<p>Выполняет команду Tcl, ассоциированную с кнопкой (при наличии
|
|
|
|
|
такой команды). Возвращаемое значение совпадает с возвращаемым
|
|
|
|
|
значением команды Tcl (или является пустой строкой, если с
|
|
|
|
|
кнопкой никакой команды не ассоциировано). Если перед началом
|
|
|
|
|
выполнения команды кнопка находится в состоянии
|
|
|
|
|
<strong>disabled</strong>, то команда игнорируется.</p>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<p>При создании кнопки Tk, в соответствии с типом кнопки,
|
|
|
|
|
автоматически создает привязки к ней, определяющие ее поведение
|
|
|
|
|
по умолчанию:</p>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<p>Кнопка становится активной при появлении над ней курсора
|
|
|
|
|
"Мыши" и дезактивируется, когда курсор ее покидает. В
|
|
|
|
|
системе Windows привязка активизируется только при нажатии
|
|
|
|
|
клавиши "1" "Мыши" на кнопке.</p>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<p>При нажатии клавиши "1" "Мыши" на кнопке
|
|
|
|
|
кнопка "вдавливается", а при отпускании клавиши она
|
|
|
|
|
восстанавливает свой первоначальный вид.</p>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<p>Если на кнопке клавиша "1" "Мыши" была
|
|
|
|
|
нажата, а затем отпущена, то выполняется команда, привязанная к
|
|
|
|
|
данной кнопке. Этого, однако, не происходит, если в момент
|
|
|
|
|
отпускания клавиши "Мыши" курсор "Мыши"
|
|
|
|
|
находился вне поля кнопки.</p>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<p>Если кнопка находится в фокусе ввода, то нажатие на клавишу
|
|
|
|
|
пробела приводит к выполнению команды, привязанной к этой
|
|
|
|
|
кнопке.</p>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<p>Если кнопка находится в состоянии <strong>disabled</strong>, то
|
|
|
|
|
все описанные выше действия не приводят ни к какому результату:
|
|
|
|
|
кнопка остается неактивной.</p>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<p>Поведение кнопки можно изменить с помощью новых привязок к
|
|
|
|
|
конкретным примитивам или путем переопределения привязок данного
|
|
|
|
|
класса.</p>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
|
|
|
|
|
</body>
|
|
|
|
|
</html>
|
|
|
|
|
|
|
|
|
|
|
2018-02-05 17:22:04 +03:00
|
|
|
|
|