Уроки Kivy #3: Размеры виджетов и позиционирование

Автор Nikita Stoianov
Уроки Kivy #3: Размеры виджетов и позиционирование

мы продолжаем в этом видео мы поговорим о позиционирование элементов управления и определение их размеров, но для начала.

Я хочу перенести логику отображения вижу в файл разметки для этого используют файлы с расширением. Киеве если мы обратимся к исходному коду класса об то мы увидим, что метод в первую очередь загружает config, а во вторую. Он загружает как раз таки или файл с помощью метода лодки если мы посмотрим свою очередь на.

Исходный код метода лодки и мы увидим, что по умолчанию QIWI будет искать ivi файл с именем нашего класса без последних трёх букв то есть без суффикса об то есть конкретно в моём случае файлы шаблона должно быть имя маленький вот QIWI потому, что — это название класса без суффикса далее я определение корневого.

Ялта самого главного на котором будут располагаться все остальные виды вынесу в отдельный класс для того чтобы переопределять, а его свой общем стандартная схема завода класс контейнер и он будет наследовать свои свойства от класса Box layout и больше он пока ничего не будет всё контейнер получаем, а метод. Билд моего приложения будет возвращать этот контейнер для класса контейнер теперь я иду в файл. МДФ и начинаю настраивать дерево вижу угловых скобках. Я указываю контейнер я использую угловые скобки потому, что я описываю правила отображения для моего класса для класса контейнер, что здесь было здесь две кнопки указывают виджет батон поскольку виджет батон является стандартным виджетом QIWI то его никак не нужно импортировать просто указываем указываю затем свойства текст и через: указываю значение этого свойства углов у нас было две кнопки поэтому вторую кнопку я точно таким же образом — это всё можно удалить сохраняю или файл сохраняется файл приложения запускаются. И вот я получил точно такой же приложение с двумя кнопками седьмой класс то есть по сути класс контейнер — это Box layout который по умолчанию использует горизонтальную ориентацию. Я хочу поменять на вертикальная используя свойство ориентация у контейнера значение будет vertical запускаю добавлю отступы поденки пусть будет 50 пикселей паддинги — это расстояние от границы с контейнера до его содержимого. Если вы подойдёте к книжному шкафу и откройте его дверцы то расстояние между стеной и книжным шкафом — это называется марка в терминологии с расстояние от стенки книжного шкафа до содержимого двух книг — это будет здесь есть свойство padding 50.000 чтобы увеличить расстояние между кнопками я должен использовать свойства с фейсом предположим. Пусть тоже будет 50 пикселей. Вот наши две кнопки. О'кей как вы понимаете каждый раз вот так запускать код чтобы посмотреть как выглядит. Интерфейс — это неудобно. Я хочу. Вам подсказать небольшой лайфхаки. Как нужно из репозиториев установить пакет или Example Get Install kivy examples он у меня установлен поэтому мне ничего устанавливать не нужен вам у него куда установит. Как определить куда он его установил есть команда в еис и мы указываем название пакета или он говорит, что установил — это вот в эту папку переходим контрл Shift чтобы скопировать среди потолще в тверское здесь. Здесь есть папка. Дима куда нужно зайти и здесь есть QIWI каталог сидим или каталог запускаем файл Python 3 in 1. Жду вот этот вот наш QIWI каталог ненашево где во-первых можно поиграться с примерами. А во-вторых здесь можно писать код — это всё берём удаляем и например например боксу. Я вот к сожалению я. Шериф не могу сделать покрупнее просто имейте в виду, что можно текст я просто вас провожу тот пример который делал атоме если нажать контрл с как будто. Этот документ то он тут же обновит содержание окна правой части и мы можем таким образом тестировать и играться изучать язык размер controls тут же мы получили изменения для экспериментов — это то, что доктор прописал размеры теперь поговорим размеры виджетов определяются двумя свойствами свойствам Says и свойствам сайт сайт — это кортеж которая определяет размер визиток в пикселях то есть размер виджета всегда становится фиксированного размера свойства сайт определяет размер в процентах от места свободного места которые предоставляет ему родительский контейнер размеры этот указывается в диапазоне от нуля до единицы единица до 100% 05. Соответственно 50% по умолчанию хинд является 11. Занимает 100% место по горизонтали и 100% место по вертикали. Поэтому наши кнопки в этом примере они занимают. Свободное пространство которое выделяет их родительский контейнер Box layout она выделяет место поровну, но не учитывая вот эти паддинги из песен про 50% беру — это эти два свойства противоположны друг другу по действию то есть мы либо указываем размер через свойства сайт либо через свойства сайт при этом у свойства стоит хенд всегда приоритет действиях практически. Это значит, что в тех ситуациях. Когда нужно использовать именно фиксированный размер свойства Face мы должны свойства стоит хенд явно присвоить значение None. Отключить Вот иллюстрация я проверяю свойства и пусть будет первая кнопка размером 100 на 100 пикселей если я забыл скрипт то ничего не поменялось в этой картине из-за того, что свойства высоты хенд имеет приоритет она стоит в 11 чтобы свойства. Союз работала мне нужно выключить делается — это через указание на ночь по горизонтали и по вертикали. И вот я получил кнопочку размером 100 на 100 пикселей причем если. Нижняя кнопка адаптивно то верхняя кнопка маленькая всегда, что на 100 пикселей на всё-таки целесообразнее использовать именно.

0 комментариев
0

Читайте также