Spec-Zone.ru › Tcl/Tk

spinbox

ИМЯ
spinbox — Создавать и управлять виджетами спинбоксов для изменения значений
СИНТАКСИС
СТАНДАРТНЫЕ ПАРАМЕТРЫ
-activebackground, activeBackground, Цвет переднего плана
-background или -bg, background, Цвет фона
-borderwidth или -bd, borderWidth, Ширина границы
-cursor, cursor, Курсор
-exportselection, exportSelection, Экспорт выделения
-font, font, Шрифт
-foreground или -fg, foreground, Цвет переднего плана
-highlightbackground, highlightBackground, Цвет выделения
-highlightcolor, highlightColor, Цвет выделения
-highlightthickness, highlightThickness, Толщина выделения
-insertbackground, insertBackground, Цвет переднего плана
-insertborderwidth, insertBorderWidth, Ширина границы
-insertofftime, insertOffTime, Время выключения
-insertontime, insertOnTime, Время включения
-insertwidth, insertWidth, Ширина вставки
-justify, justify, Выравнивание
-relief, relief, Рельеф
-repeatdelay, repeatDelay, Задержка повтора
-repeatinterval, repeatInterval, Интервал повтора
-selectbackground, selectBackground, Цвет переднего плана
-selectborderwidth, selectBorderWidth, Ширина границы выделения
-selectforeground, selectForeground, Цвет фона выделения
-takefocus, takeFocus, Получить фокус
-textvariable, textVariable, Переменная
-xscrollcommand, xScrollCommand, Команда прокрутки
ПАРАМЕТРЫ, СПЕЦИФИЧНЫЕ ДЛЯ ВИДЖЕТОВ
-buttonbackground, buttonBackground, Цвет фона
-buttoncursor, buttonCursor, Курсор
-buttondownrelief, buttonDownRelief, Рельеф
-buttonuprelief, buttonUpRelief, Рельеф
-command, command, Команда
-disabledbackground, disabledBackground, Цвет фона при отключении
-disabledforeground, disabledForeground, Цвет текста при отключении
-format, format, Формат
-from, from, От
-invalidcommand или -invcmd, invalidCommand, Команда при неверном вводе
-increment, increment, Приращение
-readonlybackground, readonlyBackground, Цвет фона при только чтении
-state, state, Состояние
-to, to, До
-validate, validate, Валидация
-validatecommand или -vcmd, validateCommand, Команда валидации
-values, values, Значения
-width, width, Ширина
-wrap, wrap, Перенос
ОПИСАНИЕ
ВАЛИДАЦИЯ
none
focus
focusin
focusout
key
all
%d
%i
%P
%s
%S
%v
%V
%W
КОМАНДА ВИДЖЕТА
ИНДЕКСЫ
число
anchor
end
insert
sel.first
sel.last
@число
ПОДКОМАНДЫ
имя пути bbox индекс
имя пути cget параметр
имя пути configure ?параметр? ?значение параметра значение ...?
имя пути delete первый ?последний?
имя пути get
имя пути icursor индекс
имя пути identify x y
имя пути index индекс
имя пути insert индекс строка
имя пути invoke элемент
имя пути scan параметр аргументы
имя пути scan mark x
имя пути scan dragto x
имя пути selection параметр аргумент
имя пути selection adjust индекс
имя пути selection clear
имя пути selection element ?элемент?
имя пути selection from индекс
имя пути selection present
имя пути selection range начало конец
имя пути selection to индекс
имя пути set ?строка?
имя пути validate
имя пути xview аргументы
имя пути xview
имя пути xview индекс
имя пути xview moveto дробь
имя пути xview scroll число что
ПОУСТОМОЧНЫЕ КЛЮЧИ
СМОТРИ ТАКЖЕ
КЛЮЧЕВЫЕ СЛОВА

Имя

spinbox — Создавать и управлять виджетами спинбоксов для изменения значений

Синтаксис

spinboxимя пути ?параметры?

Стандартные параметры

-activebackground, activeBackground, Фоновый цвет
-background or -bg, background, Фоновый цвет
-borderwidth or -bd, borderWidth, Ширина рамки
-cursor, cursor, Курсор
-exportselection, exportSelection, Экспорт выделения
-font, font, Шрифт
-foreground or -fg, foreground, Цвет текста
-highlightbackground, highlightBackground, Цвет выделения
-highlightcolor, highlightColor, Цвет выделения
-highlightthickness, highlightThickness, Толщина выделения
-insertbackground, insertBackground, Цвет вставки
-insertborderwidth, insertBorderWidth, Ширина рамки вставки
-insertofftime, insertOffTime, Время выключения
-insertontime, insertOnTime, Время включения
-insertwidth, insertWidth, Ширина вставки
-justify, justify, Выравнивание
-relief, relief, Вид рамки
-repeatdelay, repeatDelay, Задержка повтора
-repeatinterval, repeatInterval, Интервал повтора
-selectbackground, selectBackground, Цвет выделения
-selectborderwidth, selectBorderWidth, Ширина рамки выделения
-selectforeground, selectForeground, Цвет выделения
-takefocus, takeFocus, Получение фокуса
-textvariable, textVariable, Переменная текста
-xscrollcommand, xScrollCommand, Команда прокрутки

Параметры, специфичные для виджетов

Имя в командной строке: -buttonbackground
Имя в базе данных: buttonBackground
Класс в базе данных: Фоновый цвет
Цвет фона, используемый для кнопок спинбоксов.
Имя в командной строке: -buttoncursor
Имя в базе данных: buttonCursor
Класс в базе данных: Курсор
Курсор, используемый при наведении на кнопки спинбоксов. Если пусто (по умолчанию), используется стандартный курсор.
Имя в командной строке: -buttondownrelief
Имя в базе данных: buttonDownRelief
Класс в базе данных: Вид рамки
Вид рамки верхней кнопки спинбокса.
Имя в командной строке: -buttonuprelief
Имя в базе данных: buttonUpRelief
Класс в базе данных: Вид рамки
Вид рамки нижней кнопки спинбокса.
Имя в командной строке: -command
Имя в базе данных: command
Класс в базе данных: Команда
Указывает Tcl команду, которая вызывается при нажатии на кнопки спинбокса. Команда распознает несколько подстановок: %W для пути к виджету, %s для текущего значения виджета и %d для направления нажатой кнопки (up или down).
Имя в командной строке: -disabledbackground
Имя в базе данных: disabledBackground
Класс в базе данных: Фоновый цвет (отключен)
Указывает цвет фона при отключенном спинбоксе. Если пустая строка, используется обычный цвет фона.
Имя в командной строке: -disabledforeground
Имя в базе данных: disabledForeground
Класс в базе данных: Цвет текста (отключен)
Указывает цвет текста при отключенном спинбоксе. Если пустая строка, используется обычный цвет текста.
Имя в командной строке: -format
Имя в базе данных: format
Класс в базе данных: Формат
Указывает альтернативный формат для установки строкового значения при использовании диапазона -from и -to. Должен быть спецификатором формата вида %<padding>.<padding>f, так как будет форматировать число с плавающей точкой.
Имя в командной строке: -from
Имя в базе данных: from
Класс в базе данных: Начальное значение
Значение с плавающей точкой, соответствующее минимальному значению для спинбокса, используется совместно с -to и -increment. При правильном указании спинбокс будет использовать эти значения для управления содержимым. Это значение должно быть меньше значения опции -to. Если указан -values, эта опция игнорируется.
Имя в командной строке: -invalidcommand or -invcmd
Имя в базе данных: invalidCommand
Класс в базе данных: Команда при ошибке
Указывает скрипт, который будет выполнен при возвращении 0 из -validatecommand. Установка пустой строки отключает эту функцию (по умолчанию). Лучшее использование этой опции — установка на bell. См. ВАЛИДАЦИЯ ниже для получения дополнительной информации.
Имя в командной строке: -increment
Имя в базе данных: increment
Класс в базе данных: Шаг
Значение с плавающей точкой, определяющее шаг. При использовании с -from и -to значение в виджете будет изменяться на -increment при нажатии кнопки спинбокса (вверх добавляется значение, вниз вычитается).
Имя в командной строке: -readonlybackground
Имя в базе данных: readonlyBackground
Класс в базе данных: Фоновый цвет (только чтение)
Указывает цвет фона при использовании спинбокса только для чтения. Если пустая строка, используется обычный цвет фона.
Имя в командной строке: -state
Имя в базе данных: state
Класс в базе данных: Состояние
Указывает одно из трех состояний спинбокса: normal, disabled или readonly. Если спинбокс для чтения, то значение не может быть изменено с помощью команд виджета, и курсор вставки не будет отображаться, даже если фокус ввода находится в виджете; содержимое виджета всё ещё может быть выделено. Если спинбокс отключен, значение не может быть изменено, курсор вставки не будет отображаться, содержимое не будет выделяться, и спинбокс может быть отображен в другом цвете, в зависимости от значений опций -disabledforeground и -disabledbackground.
Имя в командной строке: -to
Имя в базе данных: to
Класс в базе данных: Конечное значение
Значение с плавающей точкой, соответствующее максимальному значению для спинбокса, используется совместно с -from и -increment. При правильном указании спинбокс будет использовать эти значения для управления содержимым. Это значение должно быть больше значения опции -from. Если указан -values, эта опция игнорируется.
Имя в командной строке: -validate
Имя в базе данных: validate
Класс в базе данных: Валидация
Указывает режим работы валидации: none, focus, focusin, focusout, key или all. По умолчанию none. При необходимости валидации, вы должны явно указать нужный режим. См. ВАЛИДАЦИЯ ниже.
Имя в командной строке: -validatecommand or -vcmd
Имя в базе данных: validateCommand
Класс в базе данных: Команда валидации
Указывает скрипт для оценки при валидации ввода в виджете. Установка пустой строки отключает эту функцию (по умолчанию). Валидация выполняется в соответствии со значением -validate. Эта команда должна вернуть действительное логическое значение Tcl. Если она возвращает 0 (или эквивалентное логическое значение Tcl), то значение виджета не изменится, и будет вызвана -invalidcommand, если она установлена. Если возвращает 1, значение будет изменено. См. ВАЛИДАЦИЯ ниже для получения дополнительной информации.
Имя в командной строке: -values
Имя в базе данных: values
Класс в базе данных: Значения
Должно быть правильным списком значений. Если указано, спинбокс будет использовать эти значения для управления содержимым, начиная с первого значения. Эта опция имеет приоритет над диапазоном -from и -to.
Имя в командной строке: -width
Имя в базе данных: width
Класс в базе данных: Ширина
Указывает целое число, определяющее желаемую ширину окна спинбокса в средних символах шрифта виджета. Если значение меньше или равно нулю, виджет выбирает размер, достаточный для отображения текущего текста.
Имя в командной строке: -wrap
Имя в базе данных: wrap
Класс в базе данных: Перенос
Должно быть правильным логическим значением. Если включено, спинбокс будет переносить значения данных в виджете.

Описание

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

Spinbox — это расширенный виджет entry, который позволяет пользователю перемещаться или вращаться по фиксированному набору возрастающих или убывающих значений, таких как время или даты, помимо редактирования значения, как в entry. При первом создании строка spinbox пуста. Часть spinbox может быть выделена, как описано ниже. Если spinbox экспортирует свой выделенный фрагмент (см. опцию -exportselection), то он будет соблюдать стандартные протоколы обработки выделения; выделения spinbox доступны как тип STRING. Spinbox также соблюдают стандартные правила Tk для работы с фокусом ввода. Когда у spinbox есть фокус ввода, он отображает курсор вставки, чтобы указать, куда будут вставлены новые символы.

Spinbox способны отображать строки, которые слишком длинные, чтобы полностью поместиться в окне виджета. В этом случае будет отображаться только часть строки; команды, описанные ниже, могут использоваться для изменения представления в окне. Spinbox используют стандартный механизм -xscrollcommand для взаимодействия со скроллбарами (см. описание опции -xscrollcommand для получения подробностей). Они также поддерживают сканирование, как описано ниже.

Валидация

Валидация выполняется путём установки -validatecommand вариант скрипта, который будет вычисляться в соответствии с опцией -validate следующим образом:
none
По умолчанию. Это означает, что валидация не будет выполнена.
focus
-validatecommand будет вызван при получении или потере фокуса спинбоксом.
focusin
-validatecommand будет вызван при получении фокуса спинбоксом.
focusout
-validatecommand будет вызван при потере фокуса спинбоксом.
key
-validatecommand будет вызван при редактировании спинбокса.
all
-validatecommand будет вызван для всех вышеперечисленных условий.

Возможна замена процентов в скриптах -validatecommand и -invalidcommand, как и в скрипте bind. Признаются следующие замены:

%d
Тип действия: 1 для insert, 0 для delete или -1 для валидации фокуса, принудительной или валидации переменной текста.
%i
Индекс строки символов, подлежащей вставке/удалению, если таковая имеется, в противном случае -1.
%P
Значение спинбокса при изменении. Если вы настраиваете виджет спинбокса с новой переменной текста, это будет значение этой переменной текста.
%s
Текущее значение спинбокса до изменения.
%S
Строка текста, вставляемая/удаляемая, если таковая имеется. В противном случае это пустая строка.
%v
Тип валидации, который в данный момент установлен.
%V
Тип валидации, который вызвал обратный вызов (key, focusin, focusout, forced).
%W
Имя виджета спинбокса.

В целом, сочетание -textvariable и -validatecommand может быть небезопасным. Все проблемы были устранены, так что использование -validatecommand не повлияет на традиционное поведение виджета спинбокса. Использование -textvariable для чтения без изменений никогда не создаст проблем. Опасность возникает, когда вы пытаетесь установить -textvariable на что-то, что -validatecommand не примет, что приводит к тому, что -validate становится none (-invalidcommand не будет вызван). То же самое происходит, когда при вычислении -validatecommand возникает ошибка.

В основном ошибка возникнет, когда -validatecommand или -invalidcommand встретит ошибку в своём скрипте во время вычисления или -validatecommand не вернёт действительное булево значение Tcl. Опция -validate также установится в none, когда вы редактируете виджет спинбокса изнутри -validatecommand или -invalidcommand. Такие правки переопределят ту, которая проверялась. Если вы хотите изменить значение виджета во время валидации и сохранить опцию -validate установленной, вы должны включить команду

%W config -validate %v
в -validatecommand или -invalidcommand (из которого вы редактировали виджет спинбокса). Также рекомендуется не устанавливать связанную -textvariable во время валидации, так как это может привести к тому, что виджет спинбокса будет не синхронизирован с -textvariable.

Кроме того, опция validate установится в none, когда значение спинбокса изменяется из-за корректировки from или to, и validateCommand возвращает false. Например

spinbox pathName -from 1 -to 10 -validate all -vcmd {return 0}
фактически установит опцию validate в none, потому что значение по умолчанию для спинбокса изменяется (из-за опций from и to) на значение, неприемлемое для скрипта валидации.

Команда виджета

Команда spinbox создаёт новую команду Tcl с именем pathName. Эта команда может использоваться для вызова различных операций над виджетом. Она имеет следующий общий вид:
pathName option ?arg arg ...?
Option и args определяют точное поведение команды.

Индексы

Многие из команд виджета для спинбоксов принимают один или несколько индексов в качестве аргументов. Индекс определяет конкретный символ в строке спинбокса следующим образом:
number
Определяет символ как числовой индекс, где 0 соответствует первому символу строки.
anchor
Указывает точку привязки для выделения, которая устанавливается командами виджета select from и select adjust.
end
Указывает символ сразу после последнего символа в строке спинбокса. Это эквивалентно указанию числового индекса, равного длине строки спинбокса.
insert
Указывает символ, примыкающий к курсору вставки и непосредственно после него.
sel.first
Указывает первый символ выделения. Использование этого формата является ошибкой, если выделение не находится в окне спинбокса.
sel.last
Указывает символ сразу после последнего символа выделения. Использование этого формата является ошибкой, если выделение не находится в окне спинбокса.
@number
В этом формате number обрабатывается как координата x в окне спинбокса; используется символ, охватывающий эту координату x. Например, «@0» указывает самый левый символ в окне.

Для любого из вышеперечисленных форматов могут использоваться сокращения, например, «e» или «sel.f». В общем случае индексы вне диапазона автоматически округляются до ближайшего допустимого значения.

Подкоманды

Следующие команды возможны для виджетов спинбокса:
pathName bbox index
Возвращает список из четырех чисел, описывающих рамку области, занимаемой символом, заданным index. Первые два элемента списка задают координаты x и y левого верхнего угла области на экране, занимаемой символом (в пикселях относительно виджета), а последние два элемента задают ширину и высоту символа в пикселях. Рамка области может ссылаться на область вне видимой части окна.
pathName cget option
Возвращает текущее значение параметра конфигурации, заданного option. Option может принимать любые значения, допускаемые командой spinbox.
pathName configure ?option? ?value option value ...?
Запрос или изменение параметров конфигурации виджета. Если option не указан, возвращает список, описывающий все доступные параметры для pathName (см. Tk_ConfigureInfo для информации о формате этого списка). Если option указан без value, то команда возвращает список, описывающий указанный параметр (этот список будет идентичен соответствующей подсписку значения, возвращаемого, если option не указан). Если указана одна или несколько пар option-value, то команда изменяет заданный(ые) параметр(ы) виджета на указанное(ые) значение(я); в этом случае команда возвращает пустую строку. Option может принимать любые значения, допускаемые командой spinbox.
pathName delete first ?last?
Удаляет один или несколько элементов спинбокса. First — индекс первого символа для удаления, last — индекс символа, идущего сразу после последнего удаляемого символа. Если last не указан, он по умолчанию равен first+1, т. е. удаляется один символ. Команда возвращает пустую строку.
pathName get
Возвращает строку спинбокса.
pathName icursor index
Размещает курсор вставки перед символом, заданным index. Возвращает пустую строку.
pathName identify x y
Возвращает имя элемента окна, соответствующего координатам x и y в спинбоксе. Возвращаемое значение — одно из: none, buttondown, buttonup, entry.
pathName index index
Возвращает числовой индекс, соответствующий index.
pathName insert index string
Вставляет символы из string перед символом, указанным index. Возвращает пустую строку.
pathName invoke element
Вызывает указанный элемент, либо buttondown, либо buttonup, вызывая связанное с ним действие.
pathName scan option args
Эта команда используется для реализации сканирования в спинбоксах. Она имеет две формы, в зависимости от option:
pathName scan mark x
Записывает x и текущий вид в окне спинбокса; используется совместно с последующими командами scan dragto. Обычно эта команда связана со нажатием кнопки мыши в виджете. Возвращает пустую строку.
pathName scan dragto x
Эта команда вычисляет разницу между своим аргументом x и аргументом x последней команды scan mark для виджета. Затем она корректирует отображение влево или вправо на 10 раз разницы в координатах x. Эта команда обычно связана с событиями перемещения мыши в виджете, чтобы создать эффект быстрого перетаскивания спинбокса по окну. Возвращаемое значение — пустая строка.
pathName selection option arg
Эта команда используется для изменения выделения в спинбоксе. Она имеет несколько форм, в зависимости от option:
pathName selection adjust index
Определяет конец выделения, ближайший к символу, заданному index, и настраивает этот конец выделения на index (т. е. включая, но не выходя за index). Другой конец выделения становится точкой отсчёта для последующих команд select to. Если выделение не в спинбоксе, то создаётся новое выделение, включающее символы между index и последней точкой отсчёта выделения, включительно. Возвращает пустую строку.
pathName selection clear
Очищает выделение, если оно в данный момент в этом виджете. Если выделение не в этом виджете, то команда не оказывает никакого эффекта. Возвращает пустую строку.
pathName selection element ?element?
Устанавливает или получает текущий выбранный элемент. Если указан элемент spinbutton, он будет отображаться нажатым.
pathName selection from index
Устанавливает точку отсчёта выделения перед символом, заданным index. Не изменяет выделение. Возвращает пустую строку.
pathName selection present
Возвращает 1, если в спинбоксе есть выделенные символы, 0 — если ничего не выделено.
pathName selection range start end
Устанавливает выделение, включающее символы, начиная с символа с индексом start и заканчивая символом перед end. Если end относится к тому же символу, что и start, или к более раннему, то выделение в спинбоксе очищается.
pathName selection to index
Если index находится перед точкой отсчёта, устанавливает выделение на символы от index до, но не включая, точку отсчёта. Если index совпадает с точкой отсчёта, ничего не делает. Если index находится после точки отсчёта, устанавливает выделение на символы от точки отсчёта до, но не включая, index. Точка отсчёта определяется последней командой select from или select adjust в этом виджете. Если выделение не в этом виджете, то создаётся новое выделение, используя последнюю заданную для виджета точку отсчёта. Возвращает пустую строку.
pathName set ?string?
Если string указан, спинбокс попытается установить его в это значение, в противном случае он просто возвращает строку спинбокса. Если валидация включена, она произойдёт при установке строки.
pathName validate
Эта команда используется для принудительного выполнения оценки -validatecommand независимо от условий, заданных параметром -validate. Это делается путём временного изменения параметра -validate на all. Возвращает 0 или 1.
pathName xview args
Эта команда используется для запроса и изменения горизонтального положения текста в окне виджета. Она может принимать следующие формы:
pathName xview
Возвращает список, содержащий два элемента. Каждый элемент — вещественная дробь от 0 до 1; вместе они описывают горизонтальную область, видимую в окне. Например, если первый элемент равен .2, а второй — .6, 20% текста спинбокса находится вне экрана слева, средние 40% видны в окне, а 40% текста находится вне экрана справа. Это те же значения, которые передаются полосам прокрутки через параметр -xscrollcommand.
pathName xview index
Настраивает отображение в окне так, чтобы символ, заданный index, отображался слева в окне.
pathName xview moveto fraction
Настраивает отображение в окне так, чтобы символ, расположенный на fraction-ой части пути по тексту, отображался слева в окне. Fraction должно быть дробью от 0 до 1.
pathName xview scroll number what
Эта команда сдвигает отображение в окне влево или вправо в соответствии с number и what. Number должно быть целым числом. What должно быть либо units, либо pages, или сокращением одного из них. Если what равно units, отображение сдвигается влево или вправо на number средних символов на экране; если оно равно pages, отображение сдвигается на number экранов. Если number отрицательно, то символы, расположенные левее, становятся видимыми; если положительно, то символы, расположенные правее, становятся видимыми.

Связывания по умолчанию

Tk автоматически создаёт связывания классов для спинбоксов, которые предоставляют им следующее поведение по умолчанию. В описаниях ниже, «слово» относится к непрерывной группе букв, цифр или символов «_», или к любому одиночному символу, отличном от этих.
  1. Нажатие левой кнопки мыши устанавливает курсор вставки непосредственно перед символом под курсором мыши, переключает фокус на данный виджет и очищает выделение в виджете. Перетаскивание левой кнопкой мыши выделяет область между курсором вставки и символом под курсором.
  2. Двойной щелчок левой кнопкой мыши выделяет слово под курсором и устанавливает курсор вставки в начало слова. Перетаскивание после двойного щелчка выделит область, состоящую из целых слов.
  3. Тройной щелчок левой кнопкой мыши выделяет весь текст в спинбоксе и устанавливает курсор вставки перед первым символом.
  4. Границы выделения можно изменить, перетаскивая левой кнопкой мыши, удерживая нажатой клавишу Shift. Это позволит изменить границу выделения, которая была ближе к курсору мыши при нажатии левой кнопки. Если кнопка нажимается дважды до перетаскивания, то выделение будет изменяться по словам.
  5. Нажатие левой кнопки мыши с нажатой клавишей Control установит курсор вставки в спинбоксе без изменения выделения.
  6. При вводе любых печатных символов в спинбоксе они будут вставлены в позицию курсора вставки.
  7. Представление в спинбоксе можно изменить, перетаскивая правой кнопкой мыши. Если правая кнопка мыши нажата без перемещения курсора, то выделение копируется в спинбоксе в позицию курсора.
  8. Если при нажатой левой кнопке мыши курсор мыши выйдет за левую или правую границу спинбокса, то спинбокc автоматически прокрутится, чтобы сделать больше текста видимым (если есть текст вне экрана на стороне, где курсор мыши покинул окно).
  9. Клавиши влево и вправо перемещают курсор вставки на один символ влево или вправо; они также очищают любое выделение в спинбоксе и устанавливают якорь выделения. Если клавиши влево или вправо нажаты с нажатой клавишей Shift, то курсор вставки перемещается, а выделение расширяется, включив новый символ. Клавиши Control-влево и Control-вправо перемещают курсор вставки по словам, а Control-Shift-влево и Control-Shift-вправо перемещают курсор вставки по словам и также расширяют выделение. Control-b и Control-f ведут себя так же, как влево и вправо соответственно. Meta-b и Meta-f ведут себя так же, как Control-влево и Control-вправо соответственно.
  10. Клавиша Home или Control-a перемещает курсор вставки в начало спинбокса и очищает любое выделение в спинбоксе. Shift-Home перемещает курсор вставки в начало спинбокса и также расширяет выделение до этой точки.
  11. Клавиша End или Control-e перемещает курсор вставки в конец спинбокса и очищает любое выделение в спинбоксе. Shift-End перемещает курсор в конец и расширяет выделение до этой точки.
  12. Клавиша Select и Control-Space устанавливают якорь выделения в позицию курсора вставки. Они не влияют на текущее выделение. Shift-Select и Control-Shift-Space изменяют выделение до текущей позиции курсора вставки, выделяя область от якоря до курсора вставки, если ранее выделения не было.
  13. Control-/ выделяет весь текст в спинбоксе.
  14. Control-\ очищает любое выделение в спинбоксе.
  15. Клавиша F16 (на многих рабочих станциях Sun обозначена как Copy) или Meta-w копирует выделение в виджете в буфер обмена, если выделение есть.
  16. Клавиша F20 (на многих рабочих станциях Sun обозначена как Cut) или Control-w копирует выделение в виджете в буфер обмена и удаляет выделение. Если в виджете нет выделения, то эти клавиши не имеют эффекта.
  17. Клавиша F18 (на многих рабочих станциях Sun обозначена как Paste) или Control-y вставляет содержимое буфера обмена в позицию курсора вставки.
  18. Клавиша Delete удаляет выделение, если оно есть в спинбоксе. Если выделения нет, то удаляет символ справа от курсора вставки.
  19. Клавиша BackSpace и Control-h удаляют выделение, если оно есть в спинбоксе. Если выделения нет, то удаляет символ слева от курсора вставки.
  20. Control-d удаляет символ справа от курсора вставки.
  21. Meta-d удаляет слово справа от курсора вставки.
  22. Control-k удаляет все символы справа от курсора вставки.
  23. Control-t меняет местами два символа справа от курсора вставки.

Если спинбокc отключен с помощью опции -state, то его представление все еще можно изменять, и текст в спинбоксе можно выделять, но курсор вставки не будет отображаться и никакие изменения текста не будут происходить.

Поведение спинбоксов можно изменить, определив новые привязки для отдельных виджетов или переопределяя привязки класса.

См. также

ttk::spinbox

Licensed under Tcl/Tk terms
https://www.tcl.tk/man/tcl/TkCmd/spinbox.htm

Licensed under Tcl/Tk terms
https://www.tcl.tk/man/tcl/TkCmd/spinbox.htm

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API