346 lines
		
	
	
		
			22 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			346 lines
		
	
	
		
			22 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
| <!DOCTYPE html PUBLIC -//W3C//DTD HTML 4.01 Transitional//EN>
 | ||
| <html>
 | ||
|   <head>
 | ||
|     <title>radiobutton</title>
 | ||
|   </head>
 | ||
|   <body>
 | ||
|     <h1>radiobutton</h1>
 | ||
| 
 | ||
|       <p>Создание примитива кнопки-переключателя и управление им.</p>
 | ||
| 
 | ||
|     <h2><a name=СИНТАКСИС></a>СИНТАКСИС</h2>
 | ||
| 
 | ||
|     <pre>
 | ||
|       <strong>radiobutton</strong> <em>имяПути</em> ?<em>параметры</em>?
 | ||
|     </pre>
 | ||
| 
 | ||
|     <h2><a name=СТАНДАРТНЫЕ_ПАРАМЕТРЫ></a>СТАНДАРТНЫЕ ПАРАМЕТРЫ</h2>
 | ||
| 
 | ||
|     <ul>
 | ||
|       <li><strong>-activeBackground</strong></li>
 | ||
|       <li><strong>-activeforeground</strong></li>
 | ||
|       <li><strong>-anchor</strong></li>
 | ||
|       <li><strong>-background</strong></li>
 | ||
|       <li><strong>-bitmap</strong></li>
 | ||
|       <li><strong>-borderwidth</strong></li>
 | ||
|       <li><strong>-cursor</strong></li>
 | ||
|       <li><strong>-disabledforeground</strong></li>
 | ||
|       <li><strong>-font</strong></li>
 | ||
|       <li><strong>-foreground</strong></li>
 | ||
|       <li><strong>-highlightbackground</strong></li>
 | ||
|       <li><strong>-highlightcolor</strong></li>
 | ||
|       <li><strong>-highlightthickness</strong></li>
 | ||
|       <li><strong>-image</strong></li>
 | ||
|       <li><strong>-justify</strong></li>
 | ||
|       <li><strong>-padx</strong></li>
 | ||
|       <li><strong>-pady</strong></li>
 | ||
|       <li><strong>-relief</strong></li>
 | ||
|       <li><strong>-takefocus</strong></li>
 | ||
|       <li><strong>-text</strong></li>
 | ||
|       <li><strong>-textvariable</strong></li>
 | ||
|       <li><strong>-underline</strong></li>
 | ||
|       <li><strong>-wraplength</strong></li>
 | ||
|     </ul>
 | ||
| 
 | ||
| 
 | ||
|     <p>Подробное описание этих параметров приведено в разделе <a
 | ||
| 	href=options.html><strong>options</strong></a>.</p>
 | ||
| 
 | ||
| 
 | ||
|     <h2><a name=ДОПОЛНИТЕЛЬНЫЕ_ПАРАМЕТРЫ_ПРИМИТИВА></a>ДОПОЛНИТЕЛЬНЫЕ ПАРАМЕТРЫ ПРИМИТИВА</h2>
 | ||
| 
 | ||
|     <table>
 | ||
| 	<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>
 | ||
|     </table>
 | ||
| 
 | ||
|     <p>Ассоциирует с кнопкой команду Tk. Обычно команда выполняется
 | ||
|       при отпускании клавиши 1 "Мыши" на окне
 | ||
|       кнопки-переключателя. Перед выполнением команды обновляется
 | ||
|       значение глобальной переменной переключателя (параметр
 | ||
|       <strong>-variable</strong>).</p>
 | ||
| 
 | ||
|     <table>
 | ||
| 	<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>
 | ||
|     </table>
 | ||
| 
 | ||
|     <p>Задает желаемую высоту кнопки. Если в кнопке выводится
 | ||
|       изображение или двуцветное изображение, то значение параметра
 | ||
|       задается в пикселах (т.е., в любом виде, приемлемом для
 | ||
|       <strong>Tk_GetPixels</strong>); высота текстовой кнопки задается
 | ||
|       числом строчек текста. Если параметр не задан, то высота кнопки
 | ||
|       вычисляется по ее содержимому.</p>
 | ||
| 
 | ||
|     <table>
 | ||
| 	<tr><td>Имя параметра:</td><td><strong>-indicatoron</strong></td></tr>
 | ||
| 	<tr><td>Имя в Базе:</td><td><strong>indicatorOn</strong></td></tr>
 | ||
| 	<tr><td>Класс в Базе:</td><td><strong>IndicatorOn</strong></td></tr>
 | ||
|     </table>
 | ||
| 
 | ||
|     <p>Указывает, следует ли выводить индикатор. Значение параметра
 | ||
|       должно быть булевским. Если значением является ложь, то параметр
 | ||
|       <strong>relief</strong> игнорируется и примитив всегда
 | ||
|       изображается вдавленным, если он выделен, и выпуклым в противном
 | ||
|       случае.</p>
 | ||
| 
 | ||
|     <table>
 | ||
| 	<tr><td>Имя параметра:</td><td><strong>-selectcolor</strong></td></tr>
 | ||
| 	<tr><td>Имя в Базе:</td><td><strong>selectColor</strong></td></tr>
 | ||
| 	<tr><td>Класс в Базе:</td><td><strong>Background</strong></td></tr>
 | ||
|     </table>
 | ||
| 
 | ||
|     <p>Задает цвет фона для изображения выделенной кнопки. Если
 | ||
|       параметр <strong>IndicatorOn</strong> имеет значение истина, то
 | ||
|       указанный цвет применяется для изображения индикатора. В системе
 | ||
|       Windows тот же цвет используется в качестве фона изображения
 | ||
|       индикатора вне зависимости от состояния выделения. Если
 | ||
|       значением параметра <strong>IndicatorOn</strong> является ложь,
 | ||
|       то указанный цвет используется в качестве фона для всего
 | ||
|       примитива, когда он выделен, вместо значений параметров
 | ||
|       <strong>background</strong> и
 | ||
|       <strong>activeBackground</strong>.</p>
 | ||
| 
 | ||
|     <table>
 | ||
| 	<tr><td>Имя параметра:</td><td><strong>-selectimage</strong></td></tr>
 | ||
| 	<tr><td>Имя в Базе:</td><td><strong>selectImage</strong></td></tr>
 | ||
| 	<tr><td>Класс в Базе:</td><td><strong>SelectImage</strong></td></tr>
 | ||
|     </table>
 | ||
| 
 | ||
|     <p>Задает изображение, выводимое в кнопке при выделении
 | ||
|       кнопки-переключателя (вместо изображения, заданного параметром
 | ||
|       <strong>-image</strong>). Если параметр <strong>-image</strong>
 | ||
|       отсутствует, то значение параметра -<strong>selectimage</strong>
 | ||
|       игнорируется.</p>
 | ||
| 
 | ||
|     <table>
 | ||
| 	<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>
 | ||
|     </table>
 | ||
| 
 | ||
|     <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> и
 | ||
|       <strong>background</strong>.
 | ||
|     </p>
 | ||
| 
 | ||
|     <table>
 | ||
| 	<tr><td>Имя параметра:</td><td><strong>-value</strong></td></tr>
 | ||
| 	<tr><td>Имя в Базе:</td><td><strong>value</strong></td></tr>
 | ||
| 	<tr><td>Класс в Базе:</td><td><strong>Value</strong></td></tr>
 | ||
|     </table>
 | ||
| 
 | ||
|     <p>Задает значение, которое следует заносить в переменную
 | ||
|       кнопки-переключателя при выделении этой кнопки.</p>
 | ||
| 
 | ||
|     <table>
 | ||
| 	<tr><td>Имя параметра:</td><td><strong>-variable</strong></td></tr>
 | ||
| 	<tr><td>Имя в Базе:</td><td><strong>variable</strong></td></tr>
 | ||
| 	<tr><td>Класс в Базе:</td><td><strong>Variable</strong></td></tr>
 | ||
|     </table>
 | ||
| 
 | ||
|     <p>Задает имя глобальной переменной, значение которой нужно
 | ||
|       устанавливать при выделении кнопки. Изменение значения этой
 | ||
|       переменной также приводит к изменению состояния выделения
 | ||
|       кнопки. По умолчанию параметр имеет значение
 | ||
|       <strong>selectedButton</strong>.</p>
 | ||
| 
 | ||
|     <table>
 | ||
| 	<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>
 | ||
|     </table>
 | ||
| 
 | ||
|     <p>Задает желаемую ширину кнопки-переключателя. Если в кнопке
 | ||
|       выводится изображение или двуцветное изображение, то значение
 | ||
|       параметра задается в пикселах (т.е., в любом виде, приемлемом
 | ||
|       для Tk_GetPixels); ширина текстовой кнопки задается числом
 | ||
|       символов. Если параметр не задан, то ширина кнопки вычисляется
 | ||
|       по ее содержимому.</p>
 | ||
| 
 | ||
| 
 | ||
|     <h2><a name=ОПИСАНИЕ></a>ОПИСАНИЕ</h2>
 | ||
| 
 | ||
|     <p>Команда <strong>radiobutton</strong> создает новое окно
 | ||
|       (задаваемое аргументом <em>имяПути</em>) и превращает его в
 | ||
|       примитив кнопки-переключателя. Детали изображения
 | ||
|       кнопки-переключателя, такие как ее цвета, шрифт, текст и
 | ||
|       исходный объемный вид задаются с помощью описанных выше
 | ||
|       дополнительных параметров. Команда <strong>radiobutton</strong>
 | ||
|       возвращает аргумент <em>имяПути</em>. В момент выполнения этой
 | ||
|       команды не должно существовать окна с именем <em>имяПути</em>,
 | ||
|       но должен существовать его предок.</p>
 | ||
| 
 | ||
|     <p>Кнопка-переключатель представляет собой примитив, в котором
 | ||
|       выводится текстовая строка, изображение или двуцветное
 | ||
|       изображение, а также ромб или кружок, называемый
 | ||
|       <em>индикатором</em>. Весь выводимый текст должен быть записан
 | ||
|       одним шрифтом, однако он может занимать несколько строчек на
 | ||
|       экране (если в нем есть символы перевода строки или задан
 | ||
|       параметр <strong>wrapLength</strong>). Один из символов текста
 | ||
|       может быть подчеркнут (в соответствии со значением параметра
 | ||
|       <strong>underline</strong>). Кнопка-переключатель обладает всеми
 | ||
|       характеристиками обычной кнопки, включая следующие: в
 | ||
|       зависимости от значения параметра <strong>state</strong> кнопка
 | ||
|       имеет три разных вида; кнопка может выглядеть выпуклой,
 | ||
|       вдавленной или плоской, кроме того, она может мигать. При
 | ||
|       инициации кнопки-переключателя (нажатием на клавишу 1
 | ||
|       "Мыши", когда курсор "Мыши" находится на
 | ||
|       кнопке) выполняется команда Tcl.</p>
 | ||
| 
 | ||
|     <p>Кроме того, кнопки-переключатели можно <em>выделять</em>. Если
 | ||
|       кнопка выделена, то индикатор обычно изображается как
 | ||
|       выделенный, а переменная Tcl, ассоциированная с данной кнопкой,
 | ||
|       имеет предписанное значение (обычно 1). В ОС Unix индикатор
 | ||
|       изображается вдавленным и имеет специальный цвет. В системе
 | ||
|       Windows вместо этого в индикаторе появляется круглая метка. Если
 | ||
|       кнопка-переключатель не выделена, то индикатор имеет
 | ||
|       невыделенный вид, а ассоциированная переменная имеет другое
 | ||
|       значение (обычно "0"). В ОС Unix такой индикатор
 | ||
|       изображается выпуклым и не имеет специального цвета. В системе
 | ||
|       Windows в невыделенном индикаторе отсутствует круглая
 | ||
|       метка. Обычно одна переменная обслуживает несколько
 | ||
|       кнопок-переключателей, а ее значение указывает, какая из них
 | ||
|       должна быть выделена. При выделении кнопки происходит изменение
 | ||
|       значения ассоциированной переменной. Кроме того, каждая
 | ||
|       кнопка-переключатель отслеживает значение ассоциированной
 | ||
|       переменной и при его изменении состояние выделения кнопки
 | ||
|       меняется. По умолчанию используется переменная
 | ||
|       <strong>selectedButton</strong>; ее значением является имя
 | ||
|       выделенной кнопки или пустая строка, если ни одна из кнопок,
 | ||
|       ассоциированных с данной переменной, не выделена. Имя переменной
 | ||
|       и записываемые в ней значения
 | ||
|       "выделенная"/"невыделенная" можно поменять с
 | ||
|       помощью параметров командной строки или в базе данных
 | ||
|       параметров. С помощью параметров конфигурации можно также
 | ||
|       поменять вид индикатора (или даже отменить саму необходимость
 | ||
|       его вывода). По умолчанию выделение кнопки-переключателя
 | ||
|       происходит при щелчке на кнопке.</p>
 | ||
| 
 | ||
| 
 | ||
|     <h2><a name=КОМАНДА_ПРИМИТИВА></a>КОМАНДА ПРИМИТИВА</h2>
 | ||
| 
 | ||
|     <p>Команда <strong>radiobutton</strong> создает новую команду Tcl
 | ||
|       с именем <em>имяПути</em>. С помощью этой команды можно
 | ||
|       выполнять различные операции над примитивом. Ее общий вид</p>
 | ||
| 
 | ||
|     <pre>
 | ||
|       имяПути параметр ?арг арг ...?
 | ||
|     </pre>
 | ||
| 
 | ||
|     <p><em>Параметр</em> и <em>арг</em>ументы уточняют поведение
 | ||
|       команды. Примитивы кнопки-переключателя допускают следующие
 | ||
|       формы команды:</p>
 | ||
| 
 | ||
|     <dl>
 | ||
|       <dt><em>имяПути</em> <strong>cget</strong> <em>параметр</em></dt>
 | ||
| 
 | ||
|       <dd>Возвращает текущее значение параметра конфигурации с именем
 | ||
| 	параметр. Параметр может быть любым из параметров команды
 | ||
| 	<strong>radiobutton</strong>.</dd>
 | ||
| 
 | ||
|       <dt><em>имяПути</em> <strong>configure</strong> ?<em>параметр</em>?
 | ||
| 	?<em>значение параметр значение ...</em>?</dt>
 | ||
| 
 | ||
|       <dd>Запрашивает значения параметров конфигурации примитива или
 | ||
| 	изменяет их. Если <em>параметр</em> не указан, то возвращает
 | ||
| 	список, содержащий значения всех допустимых в
 | ||
| 	<em>имениПути</em> параметров (формат списка описан в
 | ||
| 	<strong>Tk_ConfigureInfo</strong>). Если <em>параметр</em>
 | ||
| 	задан, а его новое значение - нет, то команда возвращает часть
 | ||
| 	полного списка, относящуюся к указанному параметру. Если
 | ||
| 	заданы одна или несколько пар <em>параметр-значение,</em> то
 | ||
| 	указанным параметрам примитива присваиваются новые значения, а
 | ||
| 	команда возвращает пустую строку. Параметр может быть любым из
 | ||
| 	параметров команды <strong>radiobutton</strong>.</dd>
 | ||
| 
 | ||
|       <dt><em>имяПути</em> <strong>deselect</strong></dt>
 | ||
| 
 | ||
|       <dd>Отменяет выделение кнопки-переключателя и придает
 | ||
| 	ассоциированной переменной значение .пустая строка.. Если в
 | ||
| 	момент исполнения команды данная кнопка-переключатель не была
 | ||
| 	выделена, то команда не производит никаких действий.</dd>
 | ||
| 
 | ||
|       <dt><em>имяПути</em> <strong>flash</strong></dt>
 | ||
| 
 | ||
|       <dd>Заставляет кнопку-переключатель мигать. Этот эффект
 | ||
| 	достигается путем многократного вывода изображения кнопки
 | ||
| 	поочередно в активном и нормальном состоянии. По окончании
 | ||
| 	работы команды кнопка-переключатель остается в том же
 | ||
| 	состоянии (активном или нормальном), что и перед началом ее
 | ||
| 	выполнения. Если перед началом выполнения команды кнопка
 | ||
| 	находится в состоянии <strong>disabled</strong>, то команда
 | ||
| 	игнорируется.</dd>
 | ||
| 
 | ||
|       <dt><em>имяПути</em> <strong>invoke</strong></dt>
 | ||
| 
 | ||
|       <dd>Приводит в точности к тому же результату, что и нажатие
 | ||
| 	клавиши "Мыши" на кнопке-переключателе: кнопка
 | ||
| 	становится выделенной и выполняется команда Tcl,
 | ||
| 	ассоциированная с кнопкой (при наличии такой
 | ||
| 	команды). Возвращаемое значение совпадает с возвращаемым
 | ||
| 	значением команды Tcl (или является пустой строкой, если с
 | ||
| 	кнопкой никакой команды не ассоциировано). Если перед началом
 | ||
| 	выполнения команды кнопка-переключатель находится в состоянии
 | ||
| 	<strong>disabled</strong>, то команда игнорируется.</dd>
 | ||
| 
 | ||
|       <dt><em>имяПути</em> <strong>select</strong></dt>
 | ||
| 
 | ||
|       <dd>Выделяет кнопку, перерисовывая ее в новом состоянии и
 | ||
| 	изменяя значение ассоциированной переменной.</dd>
 | ||
|     </dl>
 | ||
| 
 | ||
|     <h2><a name=ПРИВЯЗКИ></a>ПРИВЯЗКИ</h2>
 | ||
| 
 | ||
|     <p>При создании кнопки-переключателя Tk автоматически создает
 | ||
|       привязки к ней, определяющие ее поведение по умолчанию:</p>
 | ||
| 
 | ||
|     <ol>
 | ||
| 
 | ||
|       <li>в ОС Unix кнопка становится активной при появлении над ней
 | ||
| 	курсора "Мыши" и дезактивируется, когда курсор ее
 | ||
| 	покидает. В системах Mac и Windows при нажатии клавиши 1
 | ||
| 	"Мыши" на переключателе кнопка активизируется, когда
 | ||
| 	курсор "Мыши" находится на кнопке и дезактивируется, когда
 | ||
| 	курсор ее покидает;</li>
 | ||
| 
 | ||
|       <li>при нажатии клавиши 1 "Мыши" на
 | ||
| 	кнопке-переключателе кнопка становится выделенной и
 | ||
| 	выполняется команда, привязанная к ней;</li>
 | ||
| 
 | ||
|       <li>если кнопка-переключатель находится в фокусе ввода, то
 | ||
| 	нажатие на клавишу пробела приводит к выполнению команды,
 | ||
| 	привязанной к этой кнопке;</li>
 | ||
| 
 | ||
|       <li>если кнопка-переключатель находится в состоянии
 | ||
| 	<strong>disabled</strong>, то все описанные выше действия не
 | ||
| 	приводят ни к какому результату: кнопка остается
 | ||
| 	безответной.</li>
 | ||
|     </ol>
 | ||
| 
 | ||
|     <p>Поведение кнопки-переключателя можно изменить с помощью новых
 | ||
|       привязок к конкретным примитивам или путем переопределения
 | ||
|       привязок данного класса.</p>
 | ||
|   </body>
 | ||
| </html>
 | ||
| 
 | ||
| 
 | ||
| 
 | ||
| 
 | 
