Table Of Contents
Окно¶
Основной класс для создания окна по умолчанию в Kivy. Kivy поддерживает только одно окно для каждого приложения: пожалуйста, не пытайтесь создавать более одного.
- class kivy.core.window.Клавиатура(**kwargs)[исходный текст]¶
Базовый класс:
kivy.event.EventDispatcher
Интерфейс клавиатуры, возвращаемый
WindowBase.request_keyboard()
. При запросе клавиатуры вы получите экземпляр этого класса. Все вводы с клавиатуры, будь то системная клавиатура или виртуальная, будут поступать через этот экземпляр.- Events
- on_key_down: код клавиши, текст, модификаторы
Срабатывает, когда новая клавиша нажата
- on_key_up: код клавиши
Срабатывает, когда клавиша отпущена
Вот пример того, как запросить клавиатуру в соответствии с текущей конфигурацией:
import kivy kivy.require('1.0.8') from kivy.core.window import Window from kivy.uix.widget import Widget class МойСлушательКлавиатуры(Widget): def __init__(self, **kwargs): super(МойСлушательКлавиатуры, self).__init__(**kwargs) self._keyboard = Window.request_keyboard( self._keyboard_closed, self, 'text') if self._keyboard.widget: # Если существует, этот виджет - объект VKeyboard, который можно использовать # для изменения макета клавиатуры. pass self._keyboard.bind(on_key_down=self._on_keyboard_down) def _keyboard_closed(self): print('Моя клавиатура была закрыта!') self._keyboard.unbind(on_key_down=self._on_keyboard_down) self._keyboard = None def _on_keyboard_down(self, keyboard, keycode, text, modifiers): print('Клавиша', keycode, 'была нажата') print(' - текст: %r' % text) print(' - модификаторы: %r' % modifiers) # Код клавиши состоит из числа + строки # Если мы нажимаем Escape, освобождаем клавиатуру if keycode[1] == 'escape': keyboard.release() # Вернуть True, чтобы принять клавишу. В противном случае ее будет использовать # система. return True if __name__ == '__main__': from kivy.base import runTouchApp runTouchApp(МойСлушательКлавиатуры())
- callback¶
Обратный вызов, который будет вызван, когда клавиатура будет освобождена
- keycode_to_string(значение)[исходный текст]¶
Преобразует номер кода клавиши в строку согласно
Keyboard.keycodes
. Если значение не найдено в кодиках клавиш, возвращается «».
- release()[исходный текст]¶
Используйте этот метод, чтобы освободить текущую клавиатуру. Это гарантирует, что клавиатура больше не привязана к вашей функции обратного вызова.
- string_to_keycode(value)[source]¶
Преобразует строку в номер кода клавиши согласно
Keyboard.keycodes
. Если значение не найдено в кодиках клавиш, будет возвращено -1.
- target¶
Цель, которая запросила клавиатуру
- widget¶
Виджет виртуальной клавиатуры, если это разрешено в конфигурации
- window¶
Окно, к которому прикреплена клавиатура
- class kivy.core.window.WindowBase(**kwargs)[source]¶
Базовый класс окна - абстрактный виджет окна для любой реализации окна.
- Parameters
- borderless: str, одно из (‘0’, ‘1’)
Установите состояние рамки окна. Проверьте
config
документацию для более подробного объяснения значений.- custom_titlebar: str, одно из (‘0’, ‘1’)
Установите ‘1’, чтобы использовать пользовательскую строку заголовка
- fullscreen: str, одно из (‘0’, ‘1’, ‘auto’, ‘fake’)
Сделать окно полноэкранным. Проверьте
config
документацию для более подробного объяснения значений.- width: int
Ширина окна.
- height: int
Высота окна.
- minimum_width: int
Минимальная ширина окна (работает только для sdl2 window provider).
- minimum_height: int
Минимальная высота окна (работает только для sdl2 window provider).
- allow_screensaver: bool
Разрешить устройству отображать заставку экрана или переходить в спящий режим на мобильных устройствах. По умолчанию True. Работает только для sdl2 window provider.
- Events
- on_motion: etype, motionevent
Срабатывает, когда новое
MotionEvent
передается- on_touch_down:
Срабатывает, когда инициируется новое событие касания.
- on_touch_move:
Срабатывает, когда событие касания изменяет местоположение.
- on_touch_up:
Срабатывает, когда завершается существующее событие касания.
- on_draw:
Срабатывает при рисовании
Window
.- on_flip:
Срабатывает при переключении GL поверхности
Window
.- on_rotate: rotation
Срабатывает при вращении
Window
.- on_close:
Срабатывает при закрытии
Window
.- on_request_close:
Срабатывает, когда цикл событий хочет закрыть окно, или если нажата клавиша Escape и exit_on_escape равно True. Если связанная функция с этим событием возвращает True, окно не будет закрыто. Если событие вызвано из-за клавиши Escape, аргумент source передается вместе со значением keyboard в связанные функции.
Добавлено в версии 1.9.0.
- on_cursor_enter:
Срабатывает, когда указатель входит в окно.
Добавлено в версии 1.9.1.
- on_cursor_leave:
Срабатывает, когда указатель покидает окно.
Добавлено в версии 1.9.1.
- on_minimize:
Срабатывает, когда окно минимизируется.
Добавлено в версии 1.10.0.
- on_maximize:
Срабатывает, когда окно максимизируется.
Добавлено в версии 1.10.0.
- on_restore:
Срабатывает, когда окно восстанавливается.
Добавлено в версии 1.10.0.
- on_hide:
Срабатывает, когда окно скрывается.
Добавлено в версии 1.10.0.
- on_show:
Срабатывает, когда окно отображается.
Добавлено в версии 1.10.0.
- on_keyboard: key, scancode, codepoint, modifier
Срабатывает, когда клавиатура используется для ввода.
Изменено в версии 1.3.0: Параметр unicode устарел в пользу codepoint и будет полностью удален в будущих версиях.
- on_key_down: key, scancode, codepoint, modifier
Срабатывает, когда клавиша нажата.
Изменено в версии 1.3.0: Параметр unicode устарел в пользу codepoint и будет полностью удален в будущих версиях.
on_key_up: key, scancode, codepoint
Срабатывает при отпускании клавиши.
Изменено в версии 1.3.0: Параметр unicode устарел в пользу codepoint и будет полностью удален в будущих версиях.
- on_drop_begin: x, y, *args
Срабатывает, когда начинается перетаскивание текста или файлов на приложение.
Добавлено в версии 2.1.0.
- on_drop_file: filename (bytes), x, y, *args
Срабатывает, когда файл перетаскивается на приложение.
Добавлено в версии 1.2.0.
Изменено в версии 2.1.0: Переименовано из on_dropfile в on_drop_file.
- on_drop_text: text (bytes), x, y, *args
Срабатывает, когда текст перетаскивается на приложение.
Добавлено в версии 2.1.0.
- on_drop_end: x, y, *args
Срабатывает, когда перетаскивание текста или файлов на приложение завершено.
Добавлено в версии 2.1.0.
- on_memorywarning:
Срабатывает, когда на платформе возникают проблемы с памятью (в основном на iOS / Android) Вы можете слушать это событие и очищать все, что можно.
Добавлено в версии 1.9.0.
- on_textedit(self, text):
Срабатывает при вводе с использованием IME. Строка, вводимая с использованием IME, устанавливается как параметр этого события.
Добавлено в версии 1.10.1.
- allow_screensaver¶
Включен ли экран в режиме ожидания, или на мобильных устройствах разрешено ли устройству переходить в спящий режим, когда приложение открыто.
Добавлено в версии 1.10.0.
allow_screensaver
- этоBooleanProperty
и по умолчанию равно True.
- borderless¶
Когда установлен о значение True, это свойство удаляет рамку/оформление окна. Проверьте документацию по
config
для более подробного объяснения значений.Добавлено в версии 1.9.0.
borderless
- этоBooleanProperty
и по умолчанию равно False.
- center¶
Центр повернутого окна.
Добавлено в версии 1.0.9.
center
- этоAliasProperty
.
- children¶
Список дочерних элементов этого окна.
children
- это экземплярListProperty
и по умолчанию представляет собой пустой список.Используйте
add_widget()
иremove_widget()
для манипулирования списком дочерних элементов. Не изменяйте список напрямую, если не знаете, что делаете.
- clearcolor¶
Цвет, используемый для очистки окна.
from kivy.core.window import Window # красный цвет фона Window.clearcolor = (1, 0, 0, 1) # не очищать фон вообще Window.clearcolor = None
Изменено в версии 1.7.2: Цвет по умолчанию для clearcolor теперь: (0, 0, 0, 1).
Добавлено в версии 1.0.9.
clearcolor
- этоColorProperty
и по умолчанию равно (0, 0, 0, 1).Изменено в версии 2.1.0: Изменилось с
AliasProperty
наColorProperty
.
- create_window(*largs)[source]¶
Создаст основное окно и настроит его.
Предупреждение
Этот метод вызывается автоматически во время выполнения. Если вы вызовете его, он создаст новый RenderContext и Canvas. Это означает, что у вас будет новое графическое дерево, и старое будет недоступно.
Этот метод существует, чтобы позволить создавать новый контекст OpenGL ПОСЛЕ закрытия первого. (Как при использовании runTouchApp() и stopTouchApp()).
Этот метод был протестирован только в тестовой среде unittest и не подходит для приложений.
Снова не используйте этот метод, если вы точно не знаете, что делаете!
- custom_titlebar¶
Когда установлено значение True, позволяет пользователю установить виджет в качестве заголовка. Проверьте
документацию по config
для более подробного объяснения значений.Добавлено в версии 2.1.0.
см.
set_custom_titlebar()
для подробного использованияcustom_titlebar
- этоBooleanProperty
и по умолчанию равно False.
- dpi¶
Возвращает DPI экрана, вычисленный окном. Если реализация не поддерживает поиск DPI, то он равен 96.
Предупреждение
Это значение не кросс-платформенное. Вместо этого используйте
kivy.metrics.Metrics.dpi
.
- event_managers = None¶
Содержит список зарегистрированных менеджеров событий.
Не изменяйте это свойство напрямую, а используйте
register_event_manager()
иunregister_event_manager()
для регистрации и отмены регистрации менеджера событий.Менеджер событий - это экземпляр
EventManagerBase
.Добавлено в версии 2.1.0.
Предупреждение
Это экспериментальное свойство и остается таковым, пока это предупреждение присутствует.
- event_managers_dict = None¶
Содержит словарь сопоставления типа события со списком менеджеров событий.
Не изменяйте это свойство напрямую, а используйте
register_event_manager()
иunregister_event_manager()
для регистрации и отмены регистрации менеджера событий.Менеджер событий - это экземпляр
EventManagerBase
.Добавлено в версии 2.1.0.
Предупреждение
Это экспериментальное свойство и остается таковым, пока это предупреждение присутствует.
- focus¶
Проверьте, имеет ли окно в данный момент фокус.
Добавлено в версии 1.9.1.
focus
- это только для чтенияAliasProperty
и по умолчанию равно True.
- fullscreen¶
Это свойство устанавливает режим полноэкранного окна. Доступные варианты следующие: True, False, ‘auto’ и ‘fake’. Проверьте
документацию по config
для более подробных объяснений этих значений.fullscreen - это
OptionProperty
и по умолчанию False.Добавлено в версии 1.2.0.
Примечание
Опция 'fake' была устаревшей, используйте свойство
borderless
вместо нее.
- get_gl_backend_name()[source]¶
Возвращает бэкенд OpenGL, который будет или уже используется с этим окном.
- gl_backends_allowed = []¶
Список имен бэкендов OpenGL Kivy, которые, если не пусты, будут единственным списком бэкендов OpenGL, которые можно использовать с этим окном.
- gl_backends_ignored = []¶
Список имен бэкендов OpenGL Kivy, которые нельзя использовать с этим окном.
- grab_mouse()[source]¶
Захватывает мышь, чтобы она не покидала окно.
Добавлено в версии 1.10.0.
Примечание
Для этой функции требуется провайдер окон SDL2.
- height¶
Высота повернутого окна.
height
- это только для чтенияAliasProperty
.
- hide()[source]¶
Скрывает окно. Этот метод следует использовать только на настольных платформах.
Добавлено в версии 1.9.0.
Примечание
Эта функция требует провайдера окон SDL2 и в настоящее время поддерживается только на настольных платформах.
- icon¶
Путь к значку окна.
Добавлено в версии 1.1.2.
icon
- этоStringProperty
.
- keyboard_anim_args = {'d': 0.5, 't': 'in_out_quart'}¶
Атрибуты для анимации виртуальной клавиатуры/IME. t = переход, d = продолжительность. Это значение не будет влиять на настольные системы.
Добавлено в версии 1.10.0.
keyboard_anim_args
- это словарь и по умолчанию {‘t’: ‘in_out_quart’, ‘d’: .5}.
- keyboard_height¶
Возвращает высоту виртуальной клавиатуры/IME на мобильных платформах. Вернет 0, если не на мобильной платформе или если IME не активен.
Примечание
Это свойство возвращает 0 с SDL2 на Android, но установка Window.softinput_mode работает.
Добавлено в версии 1.9.0.
keyboard_height
- это только для чтенияAliasProperty
и по умолчанию равно 0.
- keyboard_padding¶
Отступ между виртуальной клавиатурой/IME и целью или нижней частью окна. Не будет влиять на настольные системы.
Добавлено в версии 1.10.0.
keyboard_padding
- этоNumericProperty
и по умолчанию равно 0.
- left¶
Положение левой границы окна.
Примечание
Это свойство SDL2 с [0, 0] в левом верхнем углу.
Изменено в версии 1.10.0:
left
теперь являетсяAliasProperty
Добавлено в версии 1.9.1.
left
- этоAliasProperty
и по умолчанию устанавливается в положение, заданное вConfig
.
- managed_textinput = False¶
-
True, если данное окно использует on_textinput для вставки текста, внутренний.
- maximize()[source]¶
Максимизирует окно. Этот метод должен использоваться только на настольных платформах.
Добавлено в версии 1.9.0.
Примечание
Для использования этой функции необходима платформа окон SDL2 и она в настоящее время поддерживается только на настольных платформах.
- minimize()[source]¶
Минимизирует окно. Этот метод должен использоваться только на настольных платформах.
Добавлено в версии 1.9.0.
Примечание
Для использования этой функции необходима платформа окон SDL2 и она в настоящее время поддерживается только на настольных платформах.
- minimum_height¶
Минимальная высота для ограничения окна.
Добавлено в версии 1.9.1.
minimum_height
- этоNumericProperty
и по умолчанию равен 0.
- minimum_width¶
Минимальная ширина для ограничения окна.
Добавлено в версии 1.9.1.
minimum_width
- этоNumericProperty
и по умолчанию равен 0.
- modifiers¶
Список активных в данный момент клавиш-модификаторов.
Добавлено в версии 1.0.9.
modifiers
- этоAliasProperty
.
- mouse_pos¶
Позиция мыши в двухмерных координатах внутри окна.
Позиция относится к левой/нижней точке окна.
Примечание
Положение курсора будет масштабировано плотностью пикселей, если высокая плотность поддерживается поставщиком окна.
Добавлено в версии 1.2.0.
mouse_pos
- этоObjectProperty
и по умолчанию равен (0, 0).
- on_cursor_enter(*largs)[source]¶
Событие, вызываемое при входе курсора в окно.
Добавлено в версии 1.9.1.
Примечание
Для работы этой функции требуется поставщик окон SDL2.
- on_cursor_leave(*largs)[source]¶
Событие, вызываемое при выходе курсора из окна.
Добавлено в версии 1.9.1.
Примечание
Для работы этой функции требуется поставщик окон SDL2.
- on_drop_begin(x, y, *args)[source]¶
Событие, вызываемое, когда начинается перетаскивание текста или файла в приложение. Ему будет следовать одно или несколько событий on_drop_text или on_drop_file, завершающихся событием on_drop_end.
Аргументы x и y - это позиция указателя мыши в момент начала перетаскивания, и вы должны полагаться на них только в том случае, если перетаскивание началось с указателя мыши.
- Parameters
Примечание
Это событие работает с поставщиком окон sdl2.
Добавлено в версии 2.1.0.
- on_drop_end(x, y, *args)[source]¶
Событие, вызываемое, когда завершается перетаскивание текста или файла в приложение.
Аргументы x и y - это позиция указателя мыши в момент завершения перетаскивания, и вы должны полагаться на них только в том случае, если перетаскивание началось с указателя мыши.
- Parameters
Примечание
Это событие работает с провайдером окон sdl2.
Добавлено в версии 2.1.0.
- on_drop_file(filename, x, y, *args)[source]¶
Событие, вызываемое, когда файл перетаскивается в приложение.
Аргументы x и y - это позиция указателя мыши в момент начала перетаскивания, и вы должны полагаться на них только в том случае, если перетаскивание началось с указателя мыши.
- Parameters
Предупреждение
В настоя щее время это событие работает с провайдером окон sdl2, провайдером окон pygame и на OS X с установленной версией pygame. Это событие оставлено для дальнейшего развития (ios, android и т. д.).
Примечание
На Windows возможно перетаскивание файла на заголовок окна или на его края, и в этом случае
mouse_pos
не будет обновляться, так как указатель мыши не находится в пределах окна.Примечание
Это событие не работает для приложений с повышенными правами, потому что вызовы API операционной системы фильтруются. Смотрите проблему #4999 для подсказок по обходу.
Добавлено в версии 1.2.0.
Изменено в версии 2.1.0: Переименовано из on_dropfile в on_drop_file.
- on_drop_text(text, x, y, *args)[source]¶
Событие, вызываемое, когда текст перетаскивается в приложение.
Аргументы x и y - это позиция указателя мыши в момент начала перетаскивания, и вы должны полагаться на них только в том случае, если перетаскивание началось с указателя мыши.
- Parameters
Примечание
Это событие работает с провайдером окон sdl2 на платформе x11.
Примечание
На Windows возможно перетаскивание текста на заголовок окна или на его края, и в этом случае
mouse_pos
не будет обновляться, так как указатель мыши не находится в пределах окна.Добавлено в версии 2.1.0.
- on_hide(*largs)[source]¶
Событие, вызываемое, когда окно скрывается.
Добавлено в версии 1.10.0.
Примечание
Для этой функции требуется провайдер окон SDL2.
- on_joy_axis(stickid, axisid, value)[source]¶
Событие, вызываемое, когда джойстик перемещает джойстик или другую ось.
Добавлено в версии 1.9.0.
- on_joy_ball(stickid, ballid, xvalue, yvalue)[source]¶
Событие, вызываемое, когда джойстик перемещает джойстик или другую ось.
Добавлено в версии 1.9.0.
- on_joy_button_down(stickid, buttonid)[source]¶
Событие, вызываемое, когда джойстик нажимает кнопку.
Добавлено в версии 1.9.0.
- on_joy_button_up(stickid, buttonid)[source]¶
Событие, вызываемое, когда джойстик отпускает кнопку.
Добавлено в версии 1.9.0.
- on_joy_hat(stickid, hatid, value)[source]¶
Событие, вызываемое, когда джойстик перемещает шляпу/крестовину.
Добавлено в версии 1.9.0.
- on_key_down(key, scancode=None, codepoint=None, modifier=None, **kwargs)[source]¶
Событие, вызываемое при нажатии клавиши (те же аргументы, что и в on_keyboard)
- on_key_up(key, scancode=None, codepoint=None, modifier=None, **kwargs)[source]¶
Событие, вызываемое при отпускании клавиши (те же аргументы, что и в on_keyboard).
- on_keyboard(key, scancode=None, codepoint=None, modifier=None, **kwargs)[source]¶
Событие, вызываемое при использовании клавиатуры.
Предупреждение
Некоторые провайдеры могут опустить scancode, codepoint и/или modifier.
- on_maximize(*largs)[source]¶
Событие, вызываемое при максимизации окна.
Добавлено в версии 1.10.0.
Примечание
Эта функция требует провайдер окон SDL2.
- on_memorywarning()[source]¶
Событие, вызываемое при проблемах с памятью на платформе. Вашей целью является освобождение кэша в вашем приложении настолько, насколько это возможно, освобождение неиспользуемых виджетов, сборка мусора и т. д.
В настоящее время это событие вызывается только из провайдера SDL2 для iOS и Android.
Добавлено в версии 1.9.0.
- on_minimize(*largs)[source]¶
Событие, вызываемое при минимизации окна.
Добавлено в версии 1.10.0.
Примечание
Эта функция требует провайдер окон SDL2.
- on_motion(etype, me)[source]¶
Событие, вызываемое при получении события движения.
- Parameters
- etype: str
Один из "begin", "update" или "end".
- me:
MotionEvent
Текущее событие движения.
Изменено в версии 2.1.0: Менеджеры событий имеют возможность обработать событие сначала, и если ни один из них не принимает событие (возвращая True), то окно будет рассылать me через события "on_touch_down", "on_touch_move", "on_touch_up" в зависимости от etype. Все несенсорные события пойдут только через менеджеров.
- on_mouse_down(x, y, button, modifiers)[source]¶
Событие, вызываемое при использовании мыши (нажатие/отпускание).
- on_mouse_move(x, y, modifiers)[source]¶
Событие, вызываемое при перемещении мыши с нажатыми кнопками.
- on_request_close(*largs, **kwargs)[source]¶
Событие, вызываемое перед закрытием окна. Если связанная функция возвращает True, окно не будет закрыто. Если событие вызывается из-за нажатия клавиши Escape на клавиатуре, в аргументах события передается ключевой аргумент source со значением keyboard для связанных функций.
Предупреждение
Когда связанная функция возвращает True, окно не будет закрыто, поэтому используйте это осторожно, потому что пользователь не сможет закрыть приложение, даже если он нажмет на красный крестик.
- on_restore(*largs)[source]¶
Событие, вызываемое при восстановлении окна.
Добавлено в версии 1.10.0.
Примечание
Эта функция требует провайдера окон SDL2.
- on_show(*largs)[source]¶
Событие, вызываемое при отображении окна.
Добавлено в версии 1.10.0.
Примечание
Эта функция требует провайдера окон SDL2.
- on_textedit(text)[source]¶
Событие, вызываемое при вводе текста с помощью IME. В качестве параметра этому событию передается строка, вводимая с помощью IME.
Добавлено в версии 1.10.1.
- on_textinput(text)[source]¶
Событие, вызываемое при вводе текста: буквы, цифры и другие символы, не являющиеся управляющими клавишами. Поскольку не гарантируется, что мы получим один символ или несколько, это событие поддерживает обработку нескольких символов.
Добавлено в версии 1.9.0.
- on_touch_down(touch)[source]¶
Событие, вызываемое при инициировании события касания.
Изменено в версии 1.9.0: Координаты касания pos теперь преобразованы в координаты окна перед вызовом этого метода. Ранее координата касания pos была равна (0, 0) при вызове этого метода.
- on_touch_move(touch)[source]¶
Событие, вызываемое при перемещении события касания (изменение положения).
Изменено в версии 1.9.0: Координаты касания pos теперь преобразованы в координаты окна перед вызовом этого метода. Ранее координата касания pos была равна (0, 0) при вызове этого метода.
- on_touch_up(touch)[source]¶
Событие, вызываемое при отпускании события касания (завершение).
Изменено в версии 1.9.0: Координаты касания pos теперь преобразованы в координаты окна перед вызовом этого метода. Ранее координата касания pos была равна (0, 0) при вызове этого метода.
- parent¶
Родительское окно.
parent
- это экземплярObjectProperty
и по умолчанию равен None. При создании родитель устанавливается в само окно. Вы должны следить за этим, если делаете рекурсивную проверку.
- raise_window()[source]¶
Поднимите окно. Этот метод следует использовать только на платформах для настольных компьютеров.
Добавлено в версии 1.9.1.
Примечание
Эта функция требует провайдера окон SDL2 и в настоящее время поддерживается только на настольных платформах.
- register_event_manager(manager)[source]¶
Регистрирует и запускает менеджер событий для обработки событий, объявленных в атрибуте
type_ids
.Добавлено в версии 2.1.0.
Предупреждение
Этот метод является экспериментальным и остается таким до тех пор, пока это предупреждение не исчезнет, так как его можно изменить или удалить в следующих версиях Kivy.
- release_all_keyboards()[source]¶
Добавлено в версии 1.0.8.
Это гарантирует, что виртуальная клавиатура / системная клавиатура не запрашивается. Все экземпляры будут закрыты.
- release_keyboard(target=None)[source]¶
Добавлено в версии 1.0.4.
Внутренний метод для виджета для освобождения реальной клавиатуры. Проверьте
request_keyboard()
для понимания того, как это работает.
- request_keyboard(callback, target, input_type='text', keyboard_suggestions=True)[source]¶
Добавлено в версии 1.0.4.
Внутренний метод виджета для запроса клавиатуры. Этот метод редко требуется конечному пользователю, так как он автоматически обрабатывается
TextInput
. Мы предоставляем его, если вы хотите управлять клавиатурой вручную для уникальных сценариев ввода.Виджет может запросить клавиатуру, указав обратный вызов для вызова когда клавиатура будет закрыта (или взята другим виджетом).
- Parameters
- callback: func
Обратный вызов, который будет вызван, когда клавиатура будет закрыта. Это может произойти, если кто-то другой запросил клавиатуру или пользователь закрыл ее.
- target: Widget
Присоедините клавиатуру к указанной цели. Это должен быть виджет, который запросил клавиатуру. Убедитесь, что у вас есть разные цели, присоединенные к каждой клавиатуре, если вы работаете в многопользовательском режиме.
Добавлено в версии 1.0.8.
- input_type: string
Выберите тип мягкой клавиатуры, который нужно запросить. Может быть одним из ‘null’, ‘text’, ‘number’, ‘url’, ‘mail’, ‘datetime’, ‘tel’, ‘address’.
Примечание
input_type в настоящее время учитывается только на Android.
Добавлено в версии 1.8.0.
Изменено в версии 2.1.0: Добавлен null к типам мягкой клавиатуры.
- keyboard_suggestions: bool
Если True, предоставляет автоматические предложения поверх клавиатуры. Это будет работать только в случае, если input_type установлен на text, url, mail или address.
Добавлено в версии 2.1.0.
- Return
Экземпляр
Keyboard
, содержащий обратный вызов, цель, и, если конфигурация позволяет, экземплярVKeyboard
, присоединенный как свойство .widget.
Примечание
Поведение этой функции сильно зависит от текущего keyboard_mode. Пожалуйста, смотрите раздел токенов конфигурации Config для бол ее подробной информации.
- restore()[source]¶
Восстанавливает размер и позицию развернутого или свернутого окна. Этот метод следует использовать только на настольных платформах.
Добавлено в версии 1.9.0.
Примечание
Для работы этой функции требуется поставщик окна SDL2 и в настоящее время поддерживается только на настольных платформах.
- rotation¶
Получить/установить поворот содержимого окна. Может быть одним из 0, 90, 180, 270 градусов.
Добавлено в версии 1.0.9.
rotation
- этоAliasProperty
.
- set_custom_titlebar(widget)[source]¶
Устанавливает виджет в качестве заголовка окна
- widget
Виджет, который вы хотите установить в качестве заголовка
Добавлено в версии 2.1.0.
Эта функция возвращает True при успешной установке пользовательского заголовка, в противном случае - false
Как использовать эту функцию
1. сначала установите Window.custom_titlebar в < span class="kc">True 2. затем вызовите Window.set_custom_titlebar с виджетом/раскладкой как аргументом # noqa: E501
Если вы хотите, чтобы ребенок виджета получал события касания, в этом дочернем элементе определите свойство draggable и установите его в False
Если вы установите свойство draggable на макет, все дочерние элементы в макете будут получать события касания
Если вы хотите изменить поведение по умолчанию, добавьте функцию in_drag_area(x, y) к виджету
Функция вызывается с двумя аргументами x и y, которые представляют собой mouse.x и mouse.y функция должна возвращать
True если эту точку следует использовать для перетаскивания окнаFalse если вы хотите получить событие касания в этой точкеПримечание
Если вы используете свойство
in_drag_area()
property draggable не будет проверятьсяПримечание
Для работы этой функции требуется поставщик окна SDL2 и в настоящее время поддерживается только на настольных платформах.
Предупреждение
custom_titlebar
должен быть установлен в True чтобы виджет был успешно установлен в качестве заголовка
- set_system_cursor(cursor_name)[source]¶
Устанавливает тип указателя мыши в окне.
Это может быть одним из следующих значений: «arrow», «ibeam», «wait», «crosshair», «wait_arrow», «size_nwse», «size_nesw», «size_we», «size_ns», «size_all», «no» или «hand».
На некоторых платформах может не быть поддержки конкретного типа указателя и в этом случае опция откатывается к одному из альтернативных значений:
Windows
MacOS
Linux X11
Linux Wayland
arrow
arrow
arrow
arrow
arrow
ibeam
ibeam
ibeam
ibeam
ibeam
wait
wait
arrow
wait
wait
crosshair
crosshair
crosshair
crosshair
hand
wait_arrow
arrow
arrow
wait
wait
size_nwse
size_nwse
size_all
size_all
hand
size_nesw
size_nesw
size_all
size_all
hand
size_we
size_we
size_we
size_we
hand
size_ns
size_ns
size_ns
size_ns
hand
size_all
size_all
size_all
size_all
hand
no
no
no
no
ibeam
hand
hand
hand
hand
hand
Добавлено в версии 1.10.1.
Примечание
Для работы этой функции требуется поставщик окна SDL2 и в настоящее время поддерживается только на настольных платформах.
- set_vkeyboard_class(cls)[source]¶
Добавлено в версии 1.0.8.
Устанавливает класс VKeyboard для использования. Если установлено значение None, будет использоваться
kivy.uix.vkeyboard.VKeyboard
.
- shape_color_key¶
Цветовой ключ для окна с формой - задает цвет, который будет скрыт от изображения окна
shape_image
(работает только для поставщика окна sdl2).Добавлено в версии 1.10.1.
shape_color_key
- это экземплярColorProperty
и по умолчанию имеет значение [1, 1, 1, 1].Изменено в версии 2.0.0: Изменено с
ListProperty
наColorProperty
.
- shape_cutoff¶
Свойство обрезки изображения окна
shape_image
(работает только для поставщика окна sdl2).Добавлено в версии 1.10.1.
shape_cutoff
- этоBooleanProperty
и по умолчанию имеет значение True.
- shape_image¶
Изображение для формы окна (работает только для поставщика окна sdl2).
Предупреждение
Размер изображения должен быть таким же, как размер окна!
Добавлено в версии 1.10.1.
shape_image
- этоStringProperty
и по умолчанию имеет значение ‘data/images/defaultshape.png’. Это значение берется изConfig
.
- shape_mode¶
Режим формирования окна (работает только для поставщика окна sdl2).
- может быть только RGB
по умолчанию - ничего особенного не делает
цветовой ключ - скрывает цвет
shape_color_key
- должен содержать альфа-канал
бинарный альфа - скрывает альфа-канал
shape_image
обратный бинарный альфа - показывает только альфа
shape_image
Примечание
Прежде чем устанавливать режим, убедитесь, что окно имеет такой же размер, как
shape_image
, предпочтительно через Config до фактического создания окна.Если
shape_image
не установлен, будет использоваться значение по умолчанию, и режим может не дать желаемый визуальный эффект.Добавлено в версии 1.10.1.
shape_mode
- этоAliasProperty
.
- shaped¶
Свойство только для чтения для проверки, можно ли формировать окно или нет (работает только для поставщика окна sdl2).
Добавлено в версии 1.10.1.
shaped
- этоAliasProperty
.
- show()[source]¶
Показывает окно. Этот метод следует использовать только на настольных платформах.
Добавлено в версии 1.9.0.
Примечание
Для работы этой функции требуется поставщик окна SDL2 и в настоящее время поддерживается только на настольных платформах.
- show_cursor¶
Устанавливает, отображать ли указатель на окне или нет.
Добавлено в версии 1.9.1.
show_cursor
- этоBooleanProperty
и по умолчанию имеет значение True.
- size¶
Получить размер окна после поворота. Если установлено
rotation
, то размер изменится в соответствии с поворотом.Добавлено в версии 1.0.9.
size
- этоAliasProperty
.
- softinput_mode¶
Определяет поведение содержимого окна при отображении программной клавиатуры на мобильных платформах. Может принимать одно из следующих значений: '', 'pan', 'scale', 'resize' или 'below_target'. Их эффекты перечислены ниже.
Значение
Эффект
''
Основное окно остается без изменений, позволяя вам использовать
keyboard_height
для управления содержимым окна вручную.'pan'
Основное окно перемещается, перемещая нижнюю часть окна так, чтобы она всегда находилась над клавиатурой.
'resize'
Окно изменяется в размере, а содержимое масштабируется для подгонки в оставшееся пространство.
'below_target'
Окно перемещается так, чтобы текущий целевой виджет TextInput, запрашивающий клавиатуру, отображался прямо над программной клавиатурой.
softinput_mode
- этоOptionProperty
и по умолчанию имеет значение ''.Примечание
Опция resize в настоящее время не работает с SDL2 на Android.
Добавлено в версии 1.9.0.
Изменено в версии 1.9.1: Добавлена опция 'below_target'.
- system_size¶
Реальный размер окна без учета поворота. Если плотность не равна 1, то
system_size
равенsize
, деленному на плотность.Добавлено в версии 1.0.9.
system_size
- этоAliasProperty
.
- to_normalized_pos(x, y)[source]¶
Преобразует абсолютные координаты в нормализованные (0-1) координаты, используя
system_size
.Добавлено в версии 2.1.0.
- toggle_fullscreen()[source]¶
Переключение между полноэкранным и оконным режимами.
Устарело начиная с версии 1.9.0: Используйте
fullscreen
вместо.
- top¶
Верхняя позиция окна.
Примечание
Это свойство SDL2 с координатами [0, 0] в верхнем левом углу.
Изменено начиная с версии 1.10.0:
top
теперь являетсяAliasProperty
Добавлено в версии 1.9.1.
top
- этоAliasProperty
и по умолчанию имеет позицию, установленную вConfig
.
- transform_motion_event_2d(me, widget=None)[source]¶
Преобразует событие перемещения me в размер окна, а затем, если передается widget, преобразует me в локальные координаты widget.
- Raises
AttributeError: Если предок виджета равен
None
.
Примечание
За исключением определенных случаев, перед вызовом этого метода следует вызвать
push()
, а после вызова -pop()
, чтобы сохранить предыдущие значения атрибутов me.Добавлено в версии 2.1.0.
- ungrab_mouse()[source]¶
Отпускает захват мыши.
Добавлено в версии 1.10.0.
Примечание
Для этой функции требуется провайдер окна SDL2.
- unregister_event_manager(manager)[source]¶
Отменяет регистрацию и останавливает менеджер событий, ранее зарегистрированный с помощью
register_event_manager()
.Добавлено в версии 2.1.0.
Предупреждение
Этот метод является экспериментальным и остается таковым до тех пор, пока это предупреждение не исчезнет, так как он может быть изменен или удален в следующих версиях Kivy.
- width¶
Повернутая ширина окна.
width
- это только для чтенияAliasProperty
.