Уроки Kivy #4: Обработка событий

  Рет қаралды 37,956

Oleg Molchanov

Oleg Molchanov

Күн бұрын

Пікірлер: 64
@ИванИванов-ц2я5щ
@ИванИванов-ц2я5щ 3 жыл бұрын
Сколько видео пересмотрел, но так просто self. еще ни кто не объяснял. Браво!
@furint9101
@furint9101 Жыл бұрын
Самый лучший курс по Kivy, объяснение простыми словами, сильное углубление в процесс, качественная подача контента!
@OkoloKoncol
@OkoloKoncol 5 жыл бұрын
Спасибо, продолжайте и дальше. Очень интересно смотреть, в сети нету достойных уроков по Kivy
@АркадийСергеев-о8м
@АркадийСергеев-о8м Жыл бұрын
Олег, спасибо огромное. Читал А.Постолита и из вашего видео за 40 минут пользы больше, чем от первых 300 страниц текста и примеров программ. Очень рад, что нашел ваш небольшой курс.
@Seimurnet
@Seimurnet 4 жыл бұрын
Олег огромный тебе респект за твою просветительскую деятельность ! Так держать!
@renatmavlyutov5929
@renatmavlyutov5929 5 жыл бұрын
Олег, не бросай! Спасибо огромное за мануал
@MrAcn2010
@MrAcn2010 Жыл бұрын
Супер лекции !!! Все доступно и понятно. Хотелось бы ещё узнать про KivyMD. Говорят том интерфейс поинтереснее. Спасибо.
@kapysha.89
@kapysha.89 6 ай бұрын
Спасибо большое, все четко, ясно и понятно
@aleksey2408
@aleksey2408 2 жыл бұрын
Олег, большое спасибо за объяснение !
@АлександрКО-п2т
@АлександрКО-п2т 2 жыл бұрын
Очень доступно объясняешь, спасибо!
@ruden6623
@ruden6623 2 жыл бұрын
Спасибо тебе огромное, я всю ночь промучался с документацией и результатов 0, у меня писало, что не может найти такое имя функции, но благодаря тебе я всё понял
@mikefromru2341
@mikefromru2341 5 жыл бұрын
Очень хорошо объясняете. Спасибо!
@HerrEugenD
@HerrEugenD 5 жыл бұрын
Супер! Очень доступно. Только вчера мучался с поиском на эту тему. Спасибо! То что нужно!
@alexzdorovennov4035
@alexzdorovennov4035 3 жыл бұрын
Огромное спасибо за урок!
@GreekkAlex
@GreekkAlex 5 жыл бұрын
ждем с нетерпением следующих видео.👍👍👍👏👏👏
@telefonitofan
@telefonitofan 3 жыл бұрын
Отличный гайд для начинающих!
@user-gl5dr4sg4e
@user-gl5dr4sg4e 3 жыл бұрын
Спасибо, очень хорошо объяснил.
@zyoma9958
@zyoma9958 5 жыл бұрын
Олег,привет! Очень интересно было бы осветить темы: 1. Как реализовать сетевое взаимодействие между андроид приложением на киви и например flask, поднятом на удаленном сервере. Чтобы можно было отправлять запросы фласку и получать от него обработанные данные. 2. Компиляция приложения на киви по Windows
@СергейБакин-ф7р
@СергейБакин-ф7р 4 жыл бұрын
Прям компоненты Вью но без клятого JS, а на родненьком питончике ) Красота то какая.
@serg5978
@serg5978 4 жыл бұрын
Ха, очень круто! А ведь получается, что со всеми этими id можно и заморачиваться. На вызов кнопки написал в py-файле такое, и все работает: def callback(self): label_text = self.children[1].text input_text = self.children[2].text label_text = input_text
@showrun4747
@showrun4747 Жыл бұрын
через полгода решите добавитть между 1 и 2 ещё объект и индексы сдвинутся...
@cdwrs.1851
@cdwrs.1851 5 жыл бұрын
Олег спасибо за отличное видео! Будут ли уроки по aiohttp? Был бы очень рад если бы ты запилил уроки!
@antontkachev4747
@antontkachev4747 4 жыл бұрын
Здравствуйте Олег. Большое спасибо за ваш курс. Не совсем понятно в конце про ObjectProperty(). Что происходит когда мы пишем например text_input = ObjectProperty()? В остальном коде вообще ничего не изменилось, не упростилось. Просто мы добавили ещё две строки, и вы объяснили, что это гораздо удобнее. А в чём именно удобство, если и без этих строк нормально работает?
@polinabaranova7805
@polinabaranova7805 4 жыл бұрын
Удобство как раз в существовании этих двух строк, то есть, например, у нас есть какая-нибудь большая программа, и понятно, что гораздо удобнее, если все эти "переменные" будут на виду в основном файле, и не нужно будет каждый раз лазить в файл .kv, чтобы просто посмотреть
@antontkachev4747
@antontkachev4747 4 жыл бұрын
@@polinabaranova7805 ну тогда можно просто сделать комментарий в коде. зачем машинное время тратить на "бесполезную" команду?
@maksimivanov9687
@maksimivanov9687 2 жыл бұрын
@@antontkachev4747 вот и я не понимаю нафига
@sova3220
@sova3220 3 жыл бұрын
лучшие уроки! жаль, что так мало лайков и просмотров.
@theworldstudy2199
@theworldstudy2199 3 жыл бұрын
А как передавать информацию между двумя питон классами. К примеру, я хочу не изменить текст лэйбла, а вывести его на другой экран или такой же пример с лэйблом, только кнопка на одном экране, а лэйбл на другом.
@CrazyHandMaker
@CrazyHandMaker 2 жыл бұрын
Вопрос по теме и не очень... Когда соберёте вашу программку в APK и запустите на телефоне, то вводить текст становится очень забавно! Всплывающая клавиатура закрывает часть экрана, и если там ваш TextInput, но он будет скрыт этой клавиатурой. Window.softinput_mode = 'below_target' поднимет ваш интерфейс вверх, и исчезнет доступ к верхним элементам. Кто бы подсказал, как решить эту задачу?
@z29305
@z29305 5 жыл бұрын
Непонятно зачем объявлять новую переменную класса text_input = ObjectProperty(). Если это ссылка на объект, то на какой, ведь мы не передали никаких значений в конструктор класса. Получается неявно ищется связанный файл киви, парсится, ищется ссылка с именем text_input, то есть берется имя переменной слева? Теперь у нас есть переменная класса container - text_input и переменная экземпляра класса self.text_input, причем в функции change_text используется только self.text_input. Какой результат вызова выражения text_input is self.text_input? True?
@zaemiel
@zaemiel 5 жыл бұрын
text_input = ObjectProperty() - создает новое свойство у класса. в .kv файле идет присваивание свойству text_input ключа словаря ids, значением которого является ссылка на объект. Когда парсинг .kv файла завершится свойство text_input будет иметь ссылку на конкретный объект. Как используется свойство класса в самом его экземпляре: class A: name = 'Vasisualiy Evlampievich Pupkin' def show_name(self): return self.name
@z29305
@z29305 5 жыл бұрын
@@zaemiel Я видимо некорректно задал вопрос. Зачем надо переобьявлять text_input, если он уже определен в киви фаиле? Я правильно понимаю что ObjectProperty() это как питоновский декоратор @property, но с проверкой типов, обработкой исключений, валидацией и событийным циклом? Kivy introduces a new way of declaring properties within a class. These properties implement the Observer pattern. They help you to: - Easily manipulate widgets defined in the Kv language - Automatically observe any changes and dispatch functions/code accordingly - Check and validate values - Optimize memory management To use them, you have to declare them at class level. That is, directly in the class, not in any method of the class. A property is a class attribute that will automatically create instance attributes. Each property by default provides an on_ event that is called whenever the property’s state/value changes.
@Yaros75
@Yaros75 3 жыл бұрын
Спасибо, оч познавательно. Вопрос; как присвоить текстовому полю значение по умолчанию например текущую дату или любое другое значение из какой-либо переменной? Это возможно сделать в kv файле или только в main.py?
@OAV2008OAV
@OAV2008OAV 3 жыл бұрын
Если у меня куча TextInput, можно ли как то установить для всех по-умолчанию multiline: false? Прописывать для каждого как-то не красиво.
@immortal_lnight
@immortal_lnight 3 жыл бұрын
Огромный тебе респект, единственное подробнее обучение киви на русском Ютубе.
@АлександрШкляев-ч7з
@АлександрШкляев-ч7з 4 жыл бұрын
Ты просто топ!!!
@devZu9
@devZu9 4 жыл бұрын
Олег, совершенно не понятно последнее действие. Зачем вот эти строки? text_input = ObjectProperty() label_widget= ObjectProperty() И не понятно по двум причинам: 1. Во-первых и без этих двух строк работает. Зачем писать лишний код? Ну и опять же если нужно для наглядности или "запоминашки", то ведь можно использовать простые комментарии. 2. Во-вторых если смотреть код дальше, то мы понимаем, что text_input это не тоже самое, что self.text_input и соответственно label_widget не тоже самое что и self.label_widget. Так зачем тогда вообще эти строки нужны?
@stupidnoob
@stupidnoob 3 жыл бұрын
Что то я не понял для чего нужен ObjectProperty
@ЭмметтБраун-у3т
@ЭмметтБраун-у3т 10 ай бұрын
И я не понял ...
@synthfur05
@synthfur05 2 жыл бұрын
Как настроить атом также?
@vyacheslavbuzivskoy1123
@vyacheslavbuzivskoy1123 5 жыл бұрын
Есть ли для kivy что то похожее на codepush?
@sainco3036
@sainco3036 5 жыл бұрын
спасибо.
@maksimivanov9687
@maksimivanov9687 2 жыл бұрын
Что такое ObjectProperty, и зачем оно нужно если и без него все работает
@west288
@west288 4 жыл бұрын
здравствуйте как сделать такую же подсветку в Атоме?
@oz669
@oz669 4 жыл бұрын
Плагины Python возможно :)
@lolbefree
@lolbefree 4 жыл бұрын
Круто, а обязательно делать этот кв файл, не проще ли пайтоном это все писать?
@Moto.Driver
@Moto.Driver 4 жыл бұрын
Не обязательно, это просто для удобства
@rcubxvd9967
@rcubxvd9967 Жыл бұрын
@Дарий но функции в КV файле нельзя применять
@random-characters4162
@random-characters4162 4 жыл бұрын
пушка
@margiux
@margiux 2 жыл бұрын
20:05 / 23:30
@Архив135
@Архив135 5 жыл бұрын
никак не могу решить проблему отображения русских шрифтов в *.kv файлов ,выдает каракули на кнопках. Если делать все в одном файле то работает хорошо, значит дело в имено в kv.
@zaemiel
@zaemiel 5 жыл бұрын
значит что? Это значит, что кодировка вашего .kv файла отличается от кодировки .py файла.
@listenheart5967
@listenheart5967 4 жыл бұрын
@MrMeky попробуй писать все в одном редакторе.Должно вроде-бы писать одинаково.
@Роман-д5ч3з
@Роман-д5ч3з 4 жыл бұрын
@MrMeky попробуй сменить кодировку .kv файла на windows-1251.
@GreekkAlex
@GreekkAlex 5 жыл бұрын
спасибо!!!++++++++++)))))))))
@NemetsAlex
@NemetsAlex 9 ай бұрын
Нахрена этим KV всё усложнять? а?
@zaemiel
@zaemiel 9 ай бұрын
Вы так этим возмущаетесь, как будто это я этот KV придумал и как будто вас заставляют им пользоваться. Возьмите Flutter или React Native в конце-то концов.
@ЭмметтБраун-у3т
@ЭмметтБраун-у3т 10 ай бұрын
Object Property что это за фигня?
@АйратКаримов-м3п
@АйратКаримов-м3п 3 жыл бұрын
Не понравилось. Очень странное кодирование в текстовом документе, стили - ладно , но self ....
@showrun4747
@showrun4747 Жыл бұрын
без селф вам вообще туго придётся :)
@olol1179
@olol1179 3 жыл бұрын
Писец, рекламы насовал, что смотреть невозможно :-(
Уроки Kivy #5: Создание приложения
26:16
Oleg Molchanov
Рет қаралды 38 М.
To Brawl AND BEYOND!
00:51
Brawl Stars
Рет қаралды 17 МЛН
人是不能做到吗?#火影忍者 #家人  #佐助
00:20
火影忍者一家
Рет қаралды 20 МЛН
Сестра обхитрила!
00:17
Victoria Portfolio
Рет қаралды 958 М.
Don’t Choose The Wrong Box 😱
00:41
Topper Guild
Рет қаралды 62 МЛН
Уроки Kivy #6: Использование KivyMD
9:36
Oleg Molchanov
Рет қаралды 34 М.
Создаем свое ANDROID приложение на PYTHON
13:55
Чёрный Треугольник
Рет қаралды 217 М.
Мобильное приложение под Android за 12 минут / уроки Kivy / Как получить APK
27:19
Изучаем мир ИТ / Олег Шпагин / Программирование
Рет қаралды 43 М.
Create a scrollview with a list of items in KIVYMD
12:03
Самое простое объяснение нейросети
16:30
Программный Кот
Рет қаралды 136 М.
To Brawl AND BEYOND!
00:51
Brawl Stars
Рет қаралды 17 МЛН