Современные графические приложения на Python | Все фишки в одном видео

⭐ Курс ООП и Приват канал: www.zproger-school.com/?...
⭐ Телеграм канал: t.me/+jvRGpkmNGQ0wY2Fh
⭐ Исходный код: t.me/codeblog8/203
В данном видео рассмотрим библиотеку, которая позволяет создавать современные графические интерфейсы (GUI) на Python. Библиотека CustomTkinter одна из самых простых в своей сфере и она намного легче чем тот же PyQt5.
В видео разбираем самые важные технологии, которые позволят вам создавать графические приложения сразу после просмотра материала.
📁 Репозиторий CustomTkinter: github.com/TomSchimansky/Cust...
📁 Библиотека для поддержки google карт: github.com/TomSchimansky/Tkin...
📁 Github: github.com/Zproger
📁 Все плейлисты с уроками: bit.ly/39GaY89
📁 Связаться со мной: zproger777@gmail.com
📁 Поддержать канал: github.com/Zproger/donate
Тайм-коды:
0:00 - Что мы рассмотрим?
0:33 - Встроенные фишки в CustomTkinter (масштабирование, темы, адаптация)
1:15 - Что такое CustomTkinter и чем отличается от tkinter?
1:55 - Где CustomTkinter будет лучше PyQt5?
3:49 - 1. Как создать простое окно с кнопкой и темами?
4:51 - 2. Такой же пример, но с ООП стилем
5:21 - 2.1 Обновление курса ООП
7:10 - 3. Открываем дополнительное окно при нажатии на кнопку
8:04 - 4. Выпадающие меню и запуск браузера из интерфейса
8:54 - 5. Запрос ввода пользователя через интерфейс
9:26 - Как нарисовать красивый интерфейс? Принцип работы виджетов
12:48 - Как работает конфигурация в customtkinter?
14:20 - Как установить фоновое изображение и скрыть ввод пароля?
15:14 - Как переключать основные окна приложения?
15:39 - Как установить иконки и логотипы внутри софта?
17:10 - Демонстрация двух софтов с виджетами
17:23 - Красивая карта внутри custom_tkinter
18:10 - Спойлер ближайшего видео

Пікірлер: 175

  • @zproger
    @zproger Жыл бұрын

    Добавил в видео небольшие улучшения: 1. Со второй половины видео, качество картинки должно стать лучше 2. Пытался добавить побольше пауз в видео, чтобы материал легче усваивался Если у вас есть пожелания к улучшению контента, вы можете ответить на данный комментарий и предложить свою идею. Всем спасибо за поддержку!

  • @djony4427

    @djony4427

    Жыл бұрын

    Вот вроде интересные видео делаешь и подбираешь классное инфу. Но вот, когда рассказываешь, все так очень монотонно говоришь. Попробуй пофиксить эту штуку. А так контент кайф.

  • @00_Alien_00

    @00_Alien_00

    Жыл бұрын

    У вас есть курс по обучению Python с 0?

  • @Vladimir-Velikij

    @Vladimir-Velikij

    7 ай бұрын

    на import customtkinter ругается. хотя делал pip instal customtkinter. Где искать проблему?

  • @Vladimir-Velikij

    @Vladimir-Velikij

    7 ай бұрын

    @@ivanpetrov2435не нравиться иди в ..............

  • @user-wh8di1ll2c
    @user-wh8di1ll2c Жыл бұрын

    В срочном порядке надо было научиться делать GUI приложение. Открываю ютуб и тут первое видео :) Спасибо

  • @zproger

    @zproger

    Жыл бұрын

    Ох как я угадал :D

  • @user-gf8yw7nb5k

    @user-gf8yw7nb5k

    Жыл бұрын

    Похожая ситуация🙂. Жаль нельзя два лайка впендюрить.

  • @dilirink9222
    @dilirink9222 Жыл бұрын

    спаасибо за размер интерфейса в vsc, с телефона всё прекрасно видно)

  • @Baasis1990
    @Baasis1990 Жыл бұрын

    Отлично! Как раз сегодня хотел этим заняться. Спасибо!

  • @zproger

    @zproger

    Жыл бұрын

    Это круто, желаю удачи =)

  • @ivankaziev8517
    @ivankaziev8517 Жыл бұрын

    А как насчёт полноценного плейлиста по этой библиотеке? Мне очень она понравилась, особенно внешний вид!

  • @zproger

    @zproger

    Жыл бұрын

    Посмотрим по активности, возможно продолжим рубрику

  • @Kai4ik

    @Kai4ik

    Жыл бұрын

    Согласен, но хотелось бы не по ней, а по GTK

  • @user-ry7lm8ln5r

    @user-ry7lm8ln5r

    Жыл бұрын

    Поддерживаю!

  • @Denis_TS

    @Denis_TS

    Жыл бұрын

    Поддерживаю идею с продолжением по данной библиотеке. Полезная и интересная информация,но слишком быстрая озвучка...

  • @RM-xb3jk

    @RM-xb3jk

    10 ай бұрын

    Поддерживаю, а знает кто есть хороший курс по PyQt5?

  • @user-gp9xv8nt4c
    @user-gp9xv8nt4c Жыл бұрын

    Спасибо за обзоры крутых библиотек!

  • @zproger

    @zproger

    Жыл бұрын

    Рад что понравилось!

  • @alexzshow6314
    @alexzshow6314 Жыл бұрын

    Круто! Последнее, что юзал это Kivy, надо будет посмотреть насколько удобнее по сравнению с kivy он будет

  • @kevinflynn4867
    @kevinflynn4867 Жыл бұрын

    Ничего себе крутотень ) спасибо за видео )

  • @zproger

    @zproger

    Жыл бұрын

    Благодарю :)

  • @torreign603
    @torreign603 Жыл бұрын

    Только вчера подумал о том, что нужно поискать библиотеки для отображения графического интерфейса. Ютуб как всегда прочитал мои мысли 😱😱😱 Спасибо за видео!

  • @AkkuChan0
    @AkkuChan0 Жыл бұрын

    Полезный ролик, спасибо!

  • @zproger

    @zproger

    Жыл бұрын

    Рад что понравилось!

  • @user-ds9hh6cg7q
    @user-ds9hh6cg7q6 ай бұрын

    хорошее видео, спасибо за информацию!

  • @kotiklinok
    @kotiklinok Жыл бұрын

    Я хотел бы увидеть полноценный плейлист по данной библиотеке

  • @zproger

    @zproger

    Жыл бұрын

    Спасибо за комментарий. Возможно что-то придумаю

  • @uniongrob8194
    @uniongrob819410 ай бұрын

    спасибо за видео!

  • @notme7277
    @notme7277 Жыл бұрын

    продолжай рубрику htmlsession!! а за видео спасибо. очень полезно.

  • @billstore2627
    @billstore2627 Жыл бұрын

    Гуд, спасибо!

  • @xcvb4
    @xcvb4 Жыл бұрын

    Спасибо за хороший контент и за твой труд, какой дистрибутив используешь? почему именно он?

  • @zproger

    @zproger

    Жыл бұрын

    На основе arch, в видео zorin. Возможно скоро сделаю видео о своей кастомной оболочке.

  • @igorek6464
    @igorek6464 Жыл бұрын

    Я делал проект редактора кода на ckt но у меня не получилось реализовать некоторые элементы связанные с особенностями библиотеки

  • @fantomasray
    @fantomasray Жыл бұрын

    А можно как-то кликая по Frame открывать новое окно? Или библиотека не позволяет это сделать?

  • @brospace2705
    @brospace2705 Жыл бұрын

    Как сделать так чтобы после barrier.wait() print( ''текст'' ) выводился 1 раз. Но не изменяя barrier = threading.Barrier( --> 5

  • @demg7738
    @demg7738 Жыл бұрын

    Выглядит годно, но думаю что gtk4-rs или даже возможно Bevy для Rust попроще в плане управления потоками и запаковки приложения. А бэкенд - сетевой или локальный можно уже и на Python. Тут насколько я вижу тоже GTK+

  • @RimmieEkworg
    @RimmieEkworg Жыл бұрын

    а есть тут на кнопку повесить что то вроде обзор, чтобы далее в проводинике можно было выбрать файл или папку ?

  • @i_applemac
    @i_applemac Жыл бұрын

    Прикольно)

  • @iteospace
    @iteospace6 ай бұрын

    Где там гриды с фильтрами и сортировкой? А TreeList есть?

  • @user-uk2iq3mt8d
    @user-uk2iq3mt8d11 ай бұрын

    Я давно использую фреймворк Customtkinter в разрабатыванию приложений с ноября 2022. Он отличный - простой и красивый. Однако не хватает в нём аттрибута меню и tk.call(). А так хороший, всем советую.

  • @VelikiiYA
    @VelikiiYA Жыл бұрын

    а таблички/деревья там есть?

  • @lowGP
    @lowGP Жыл бұрын

    Мне кажется, удобнее будет отделять фреймы в отдельные классы

  • @qrthack3233
    @qrthack32334 ай бұрын

    Привет, у меня такой вопрос, коммерческого опыта нет, знаю C, Python, люблю Computer Science. Хочу в backend, выбираю между Python, Java, C#, Golang что посоветуете, чтобы легче было устроиться на работу?

  • @nickythecasper4314
    @nickythecasper4314 Жыл бұрын

    "Мы создали кнопку всего лишь в 17 строчек кода". В то же время Senior Web Frontend с реактом головного мозга: 😰🤯какой нахер command - это onClick. Ну а вообще кроме шуток, это реально дикий ужас а не код. Если б мне предстояло расширять гую вот на этом, я бы вышел из катки. Это уровень jQuery. Реально, создать на этом что-то сложное и реактивное если и реально, то это такая лапша получится, что ну нахер.

  • @zproger

    @zproger

    Жыл бұрын

    :D

  • @YouGibsoN
    @YouGibsoN Жыл бұрын

    Скажите, а курс по ООП планируете на Stepik добавлять?

  • @zproger

    @zproger

    Жыл бұрын

    Нет, со степика ушел так как его недостаточно для реализации моих задач. К тому же на степике отключили многие платежные системы и люди не могут купить курс, ну и их огромная комиссия (40% с автора + 20% к цене курса + НДС) просто убивает). Скажем я бы залил курс за 115 долларов, а людям пришлось бы платить около 170 чисто за комиссиию, поэтому Stepik во многих моментах меня разочаровал, сейчас работаю над своей платформой, чтобы контролировать все процессы.

  • @user-xq7ds1ct2l
    @user-xq7ds1ct2l Жыл бұрын

    Можно ли потом созданное приложение собрать под андроид? С обычным tkinter вроде можно было

  • @serobrine

    @serobrine

    Жыл бұрын

    нельзя. python под андроид плохо собирается

  • @tenoltosay

    @tenoltosay

    Жыл бұрын

    Изучай kotlin или java и начинай учить, видео и материала очень много и библиотек, это лучше будет

  • @user-ei1by3ye6o
    @user-ei1by3ye6o11 ай бұрын

    Что проще? CustomTkinter или DearPyGui? Не делали сравнения?

  • @ITHobbies
    @ITHobbies Жыл бұрын

    Привет) Достойная либа, единственное чего не хватает - виджета treeview из ttk. Я бы рекомендовал её как замену стандартного Ткинтера. Так же нравится их документация. Твоё видео хорошо описывает функционал либы. Интересно видел мой видос про customtkinter при подготовке своего?))

  • @zproger

    @zproger

    Жыл бұрын

    Привет, при подготовке не смотрел к сожалению, но если мне не изменяет память, то когда-то давно смотрел твой мини-курс по tkinter

  • @ITHobbies

    @ITHobbies

    Жыл бұрын

    @@zproger с твоего видео пошел трафик на мое)

  • @zproger

    @zproger

    Жыл бұрын

    Возможно в похожих видео отображается)

  • @ibnalvichannel4664
    @ibnalvichannel4664 Жыл бұрын

    А как вообще создаются эти GUI? Как они работают? Они рисуются изначально как ты хочешь? Или мы должны придерживатся API который нам предоставляет ОС? Где мне искать информацию на этот счет? Хотелось бы углубится в эту тему дабы знать как там все под капотом устроено

  • @mcomponent

    @mcomponent

    Жыл бұрын

    Посмотрите в сторону C. Чаще всего, API конечно даёт ОС, но лучше работать с ним через какой нибудь glfw и прочие. Также можете почитать чуток про OpenGL, там много информации в том числе и про создание окна и сподручные для этих целей библиотеки. В случае с Python, вам остаётся только использовать обёртку. Но прошу вас, не надо так делать: во первых, библиотека написана не лучшим образом; во вторых - лучше сначала самому понять как всё работает изнутри, а только потом брать эту библиотеку.

  • @danilzasyadko5133
    @danilzasyadko5133 Жыл бұрын

    Классная библиотека. Сам я редко практикую программы с интерфейсом, но когда узнал что у Ткинтер есть такой аналог как CTkinter, то решил все таки изучить библиотеку. Для общего понимания, пишу сейчас программку - редактор фото. На 70% площади окна растянул канвас, справа менюшке с ползунками для изменения фотографии. Благодаря библиотеке PIL можно реализовать уйму настроек, ну а результат сразу же выводится на канвас

  • @1kuperster

    @1kuperster

    Жыл бұрын

    Клас гляну бы ваш проект

  • @NikolaShoOtNik

    @NikolaShoOtNik

    11 ай бұрын

    покажите?) интересно

  • @0rarka0
    @0rarka07 ай бұрын

    У меня почему-то не работает выравнивание по центру(

  • @qteix
    @qteix Жыл бұрын

    Привет, какой линукс используешь?

  • @zproger

    @zproger

    Жыл бұрын

    В видео zorin, на основе и моменте с интеграцией - arch

  • @linuxoidovich

    @linuxoidovich

    Жыл бұрын

    @@zproger А почему arch, а не artix? Я не особо люблю systemd, вот артикс использую.

  • @newjerseyAVGN
    @newjerseyAVGNКүн бұрын

    Добрый день. Сделайте пожалуйста отдельный плэйлист по этой библиотеке.

  • @shahka32
    @shahka324 ай бұрын

    А как сделать такое "разделение" 10.56

  • @rokot
    @rokot Жыл бұрын

    Tk сам по себе очень быстрый, так как сделан на с++, а вот обработка запросов к виджетам уже на python

  • @neviondh7360
    @neviondh736017 күн бұрын

    было бы здорово увидеть современный гайд в связке qml + python под винду

  • @zproger

    @zproger

    17 күн бұрын

    Спасибо за идею

  • @romanbessarabec5556
    @romanbessarabec5556 Жыл бұрын

    Я заметил что почти все учителя - программисты стараются показать себя крутыми. Их изложение материала выглядит примерно так: тра - та-та-та-та. Как из пулемёта.

  • @zproger

    @zproger

    Жыл бұрын

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

  • @KOT3prod
    @KOT3prod Жыл бұрын

    минус ctkintera в классе, тем что вы не сможете передавать данные в multiprocess, то есть если вы создаете функцию которая выполняется n-ое кол-во времени то обязательно надо использовать асинхрон, мп, трейд, чтобы ваш интерфейс не лег, и к сожалению лично я, не нашел способа передавать какие либо данные с мп в класс, это нужно например для прогресс бара, кнопок и всего, с чем можно взаиподействовать(отключать, останавливать, добавлять). Поэтому я нашел хоть и не хороший, но выход, это полностью интерфейс писать в if main, тогда можно спокойно передавать данные в мп, трейде, асинхроне. Да, к сожалению, не все виджеты реализованы, но например люди создали тот же ctk alert, его тоже можно установить и он хорошо гармонирует с CTk

  • @slkzak

    @slkzak

    Жыл бұрын

    С мп не работал, полноценная многопоточность за счет подгрузки в память еще дополнительных экземпляров интерпретатора для большинства своих (не связанных с глубокой математикой) задач считаю излишней. А вот треды и асинхрон работают вполне нормально, если соблюдать концепции ООП. Самое главное, никогда не изменять с других потоков значения(text) виджетов напрямую (тут не сильно разбирался как ctk работает изнутри, но артефактов довольно много), лучше виджетные тексты инициализировать с помощью переменных (StringVar), после эти переменные можно запихивать в геттеры/сеттеры и изменять с других классов и потоков, не затрагивая напрямую виджеты и ячейки памяти, связанные с основным потоком mainloop в ctk. Также есть возможность выполнять длительные операции с помощью after() и after_idle(), создавая подобие рекурсивных циклов и не блокируя основной поток обновления гуи.

  • @Rostik999_
    @Rostik999_ Жыл бұрын

    здравствуйте.Как мне запрограммировать кнопку так,чтобы при нажатие на нее у меня открывалось новое окно.Вот код кнопки : self.home_frame_button_2 = customtkinter.CTkButton(self.home_frame, text="AUDCAD", image=self.image_icon_image, compound="right", height=50, width=300, command=self.command) self.home_frame_button_2.grid(row=2, column=0, padx=20, pady=10)

  • @happyswing

    @happyswing

    3 ай бұрын

    Попробуй узнать через chat gpt

  • @1kuperster
    @1kuperster Жыл бұрын

    Да я бы хотел посмотреть например калькулятор как сделать на этой библиотеки

  • @slava_zxz
    @slava_zxz3 ай бұрын

    Я посмотрел 18 часовой туториал по tk + ttk + ctk + ttkbootstrap и смог сделать проект

  • @mymobigoogle205
    @mymobigoogle205 Жыл бұрын

    А как тебе идея рисовать интерфейс на Flutter, а из него просто дергать бекэнд на python? Перспективней, чем граф либы питоновские перебирать.

  • @NikolaShoOtNik

    @NikolaShoOtNik

    11 ай бұрын

    Это будет клиент-серверное приложение? похоже, что CTK больше подходит для обычного десктопного приложения без бэка - так проще, чем на 2х языках писать. ИМХО

  • @TheMorpheios

    @TheMorpheios

    8 ай бұрын

    Для этого есть Flet

  • @anonim19992
    @anonim1999211 ай бұрын

    Небольшая поправочка. Приведу вырезку из Habr а. "PyQt5 распространяется под GPL и коммерческой лицензией. PySide2 распространяется как Qt под GPL, LGPL и коммерческой лицензией. Пишите открытое/свободное ПО -- можно использовать как PyQt5, так и PySide 2. Пишите закрытое/коммерческое ПО -- бесплатно можно использовать только PySide 2 (и то с некоторыми оговорками (дополнение)*), а для использования PyQt5 потребуется покупать коммерческую лицензию."

  • @ITHobbies
    @ITHobbies Жыл бұрын

    под 1к лайков ты имел введу ttkbootstrap?)

  • @zproger

    @zproger

    Жыл бұрын

    нет) немного другая либа, часто её юзают для читов

  • @panigo63
    @panigo63 Жыл бұрын

    А графики может рисовать красивые 😮

  • @sund3RRR
    @sund3RRR Жыл бұрын

    Не подскажешь, это у тебя budgie или такой гном с темой и расширениями?

  • @zproger

    @zproger

    Жыл бұрын

    это дефолт оболочка от zorin

  • @user-ur3dt8zd7d
    @user-ur3dt8zd7d Жыл бұрын

    Мне нравится как автор пытается нас успокоить из-за такого количеством кода на экране)) Снизить скорость повествования похоже не сильно получилось, нажимал на паузу, пытался переварить сказанное...

  • @zproger

    @zproger

    Жыл бұрын

    Спасибо, постараюсь не спать по 2 дня перед видео, чтобы говорить медленней :D А если без шуток, то буду пытаться расставлять побольше пауз, благодарю за подсказку.

  • @VaeV1ct1s
    @VaeV1ct1s Жыл бұрын

    Logging page в приложении на питоне. Поржал А чем плох pyqt5? Скачал дизайнер, набросал в графическом интерфейсе, ручками дописал логику кнопок Profit

  • @qweqweqweqweqweqweqweqw
    @qweqweqweqweqweqweqweqw Жыл бұрын

    Она поддерживает асинхронность?

  • @zproger

    @zproger

    Жыл бұрын

    Внутри можно реализовать асинхронные функции, сама же либа работает без явных асинк вызовов, так как GUI обычно строится на событиях.

  • @user-gh5sv7wm2j
    @user-gh5sv7wm2j Жыл бұрын

    Чот библиотека напоминает мои стили в ткинтер)

  • @zproger

    @zproger

    Жыл бұрын

    украли наверное :D

  • @DomNaPechi
    @DomNaPechi11 ай бұрын

    Всё классно, но смотреть нужно в замедлении х2 как минимум, т.к. на такой скорости нифига не понятно. Мышь носится по экрану, данные скачут вниз/вверх - понятно только профи, наверняка.

  • @alexbobtail4862
    @alexbobtail4862 Жыл бұрын

    А что лучше, PyQT5 или PyQT6 ?

  • @zproger

    @zproger

    Жыл бұрын

    PyQt6 не пробовал к сожалению, но если будет такой опыт, то могу сравнить их

  • @mymobigoogle205

    @mymobigoogle205

    Жыл бұрын

    Спроси чатГПТ. :)

  • @user-dj4sk6uo7p
    @user-dj4sk6uo7p Жыл бұрын

    Видео выжимка самого необходимого по интерфейсу. Хотя щам больше web применяю, эть супер полезно может быть!

  • @EnderFay7777
    @EnderFay7777 Жыл бұрын

    А вот что лучше pyqt5 или pyqt6

  • @postalfire9118
    @postalfire9118 Жыл бұрын

    Здравствуйте,меня зовут Рома. У меня такая ситуация, я ухожу после 9 класса и хочу стать программистом, но поступаю на другую техническую специальность в политех, которая не связана с программированием У меня есть мнение, что на программиста нет смысла идти учится в ВУЗ. Потому что там плохо учат, и образование программиста,полученное в России бесполезно, для работы в будущем. Поэтому, я хожу на курсы по программированию на разработчика и считаю, что это лучше, чем учится програмированию в высшем учебном заведении. Можешь дать совет по этому поводу как лучше поступить ? Уйти после 9 и получить техническую профессию+ ходить на курсы по программированию. Либо же пойти в 11 и поступить в ВУЗ где учат IT специальностям. В будущем хочу стать востребованным специалистом.

  • @user-ur3dt8zd7d

    @user-ur3dt8zd7d

    Жыл бұрын

    Здравствуй Рома, я бы посоветовал закончить 11. У большинства работодателей некий фетиш--принимать на работу только с высшим образованием, повышать на руководящую должность тоже только с ним. Я считаю, что оно нужно только для галочки, но кто-то выжимает из этого максимум

  • @torburgmax

    @torburgmax

    8 ай бұрын

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

  • @lostsoul8634
    @lostsoul8634 Жыл бұрын

    пожалуйста сделайте миниобзор языка mojo(аля python++)

  • @zproger

    @zproger

    11 ай бұрын

    Спасибо, сделаю

  • @idensas
    @idensas Жыл бұрын

    Эх, я делал переводчика на tkinter, такой кринж вышел. Не смог реализовать по своей задумке, пришлось выкручиваться. Как там у аналогов не знаю, но, думаю, что там с функционалом покруче.

  • @antonzimin3999
    @antonzimin3999 Жыл бұрын

    @ZProger [ IT ] чтобы на видео весь код помещался на экран без горизонтального скролла юзай "alt + z". Счастья, любви, здоровья и хорошего контента. Спасибо за текущий контент )))

  • @evalinor
    @evalinor Жыл бұрын

    Не совсем понимаю, почему все проходят мимо flet.

  • @zproger

    @zproger

    Жыл бұрын

    классная либа на самом то деле

  • @xfxox
    @xfxox Жыл бұрын

    А что там с графиками? Мне нравится DearPyGUI - она полностью рендерится через видеопамять, очень быстро может отрисовывать всякие кривые

  • @tvojKot
    @tvojKot Жыл бұрын

    какой смысл gui на питоне?

  • @zproger

    @zproger

    Жыл бұрын

    чтоб было красиво :D

  • @skill9421
    @skill9421 Жыл бұрын

    привет,всегда хотел спросить профика джанго хорош для сайтов или нет

  • @Filmok79
    @Filmok794 ай бұрын

    почему не flet? удобнее, современнее, красивее в разы

  • @develper7338
    @develper7338 Жыл бұрын

    Почему ты рекомендуешь PyQt5 который платный и темболее ушёл из РФ (насколько помню), учитывая что сущетсвует PySide6 который бесплатный и 90% это тот же PyQt

  • @zproger

    @zproger

    Жыл бұрын

    Можно использовать и PySide6, это практически одно и тоже, я говорю о QT в целом

  • @linuxoidovich

    @linuxoidovich

    Жыл бұрын

    PyGTK еще есть.

  • @black_grizzly

    @black_grizzly

    Жыл бұрын

    ​@@zproger pyqt платный?

  • @zproger

    @zproger

    Жыл бұрын

    нет, он платный только для коммерческого использования, и то, если это какой-то софт для фриланса, то никто проверять не будет) Речь о больших приложениях, которые выделяются прям целым компаниям

  • @black_grizzly

    @black_grizzly

    Жыл бұрын

    @@zproger а как это контролируется?) Если я захочу сделать приложение для коммерческого использования? Не очень понимаю, как владельцы это отследят)

  • @nakamasama
    @nakamasama Жыл бұрын

    Хуже выбора я не ожидал. Я ожидал чего угодно, но только не это. Хуже фреймворка я не знаю. Это самый наименее функциональный фреймворк. Он почти ничего не умеет. Я про стандартный TKinter. А CustomTKinter, как ты сказал, просто добавляет темки, красивые стили и цвета. Но никакого совершенно функционала. И вообще, что ты ввиду имеешь по словами отдельно рисовать? Если я хочу, я могу сворганить интерфейс в QtDesigner и сконвертировать .ui в готовый .py, а потом писать класс, унаследованный от него. А если достаточно одной кнопки, то это можно сделать и в одну строчку. Можно интерфейс и чисто кодом делать, а можно и в Дезайнере. Я не знаю, чё ты бомбишь на Qt, и как ты вообще подсчитал количество страниц формата A4, если документация расспространяется только в Веб-формате и никаких книг не существет. Ты скачивал сайт с документацией и в ворде открывал? 4:03 - окошко описано в 17 строчек. И ты получил окошко, которое в Qt пишется строчек за 5-10. Я эту программу, которую ты представил в начале меню, сделал бы в Дезайнере за 1 минуту, а в коде минут за десять и заняло бы это достаточно мало кода. Я полистал твой ролик и видел файлы в 300 строк. Что явно больше чем занимает Qt. Так почему же CustomTKinter лучше Qt? Я графические интерфейсы начала изучать через полгода после того, как начал изучать программирование. И с Qt я очень давно знаком. И я могу назвать только два его минуса - минимальный вес программы - 25 Мб (меньше никак) и стиль - он отсутствует. Но если ты знаешь CSS - это не проблема. С QSS ты сможешь сделать вообще любой дизайн. Хоть как в браузере. Скажи, как же ж не хватает версталщикам своего CustomTKinter вместо CSS, да? Следовательно рекомендовать либо что, связаннное с TKinter - равносильно советам, типа, "Хочешь сделать йогур? Возьми венчик, миску, и колоти содержимое рукой пять минут. Забудь про свой миксер, который может это сделать за 10 секунд. Бери миксер, только если тебе нужно сделать партию из 10000 йогуртов" (простите, в кухонных игрушках я не разбираюсь). Так прозвучали для меня твои слова по этому таймингу 3:28-3:49. Если у тебя такое же отвращение к Qt, как у меня к TKinter - посоветуй всё, что угодно, кроме этого ведра помойного. На Питоне есть куча других графических фреймворков. Зачем выбирать самый наихудший??? Ну кто мне это объяснит?????

  • @user-io7ji9uz4y
    @user-io7ji9uz4y Жыл бұрын

    Я чёт не понял как в exe экспортировать его.

  • @zproger

    @zproger

    Жыл бұрын

    В документации есть материал об этом, но если кратко, то собрать в 1 exe файл именно эту либу не выйдет, но можно собрать с pyinstaller без флага -F

  • @user-io7ji9uz4y

    @user-io7ji9uz4y

    Жыл бұрын

    @@zproger Я уже увидел) Я уже компилировал но при запуске давало ошибку в итоге переписал и заработало. Но спасибо за обратную связь ❤️.

  • @linuxoidovich

    @linuxoidovich

    Жыл бұрын

    А зачем собирать питон? Это довольно редко когда пригождается.

  • @slkzak

    @slkzak

    Жыл бұрын

    @@zprogerВсе компилируется в 1 exe, если указать путь к стилям при компиляции или на худой конец --collect-all customtkinter

  • @deepdark242
    @deepdark242 Жыл бұрын

    Го ещё

  • @SergeyMorozik
    @SergeyMorozik Жыл бұрын

    Курс ООП прекрасно, но разобрались бы вы с оплатой. Чтобы можно было оплачивать кредиткой или PayPal. В общем, чем нибудь выданным не отечественной финансовой организацией.

  • @zproger

    @zproger

    Жыл бұрын

    На данный момент поддерживаются карты любых стран и криптовалюта. К сожалению PayPal только подключить не удалось.

  • @vdv6nick317
    @vdv6nick317 Жыл бұрын

    Ни одна библиотека и рядом не стоит с qt, к сожалению... К сожалению, потому что в qt нет многопоточности😢

  • @zproger

    @zproger

    Жыл бұрын

    Как раз таки есть, в QT очень классные потоки с сигналами и многими другими фишками, класс QThread

  • @vdv6nick317

    @vdv6nick317

    Жыл бұрын

    @@zproger там сигналы и слоты, да, но это не многопоточность, по сути все отрисовки рисует только один поток main. Если хочешь разбить отрисовку на 2 и более потока, именно отрисовку!!! А не расчёты положения чего-то в пространстве! - до свидания! Получишь аксес мемори виолончели!

  • @Anna_Porosenok

    @Anna_Porosenok

    Жыл бұрын

    ​@@vdv6nick317 так потому что сам питон не реализовал многпоточность, её можно реализовать с костылями но не средствами питона, это и есть проблема для меня, использовать ядра процесорра..

  • @_sergeevich5827

    @_sergeevich5827

    Жыл бұрын

    @@vdv6nick317 потому что QT нормальные люди используют с С++ на котором и для которого она написана. И всё там отлично. Вообще гуй писать на питоне это если только для развлечения так как распространять такую программу будет очень затруднительно.

  • @black_grizzly

    @black_grizzly

    Жыл бұрын

    ​@@_sergeevich5827почему?

  • @eprst0
    @eprst0 Жыл бұрын

    После с++ смотришь на питон и думаешь какой это детский сад 😄😏

  • @zproger

    @zproger

    Жыл бұрын

    :D

  • @andreykalyadin5331
    @andreykalyadin5331 Жыл бұрын

    Кодить интерфейсы в 21 веке это какой-то мрак. Как туго с дизайнерами интерфейсов/отчетов в python. И PyQt особо не спасает. Особенно когда есть с чем сравнить, например Visual Studio.

  • @anigoforever3872

    @anigoforever3872

    Жыл бұрын

    Шо?

  • @andreykalyadin5331

    @andreykalyadin5331

    Жыл бұрын

    @@anigoforever3872 Га?

  • @zproger

    @zproger

    Жыл бұрын

    А причем тут визуал студио к PyQt5?

  • @andreykalyadin5331

    @andreykalyadin5331

    Жыл бұрын

    @@zproger , это о том, насколько проще и быстрее пишутся интерфейсы в нормальной среде разработки с интегрированным дизайнером, редактором кода и интеллисенс подсказками. И не нужно знать и помнить ту еву кучу свойств и методов для установки размеров, геометрии, привязки, масштабирования и т.д.

  • @CAHCrawlAdaptHide
    @CAHCrawlAdaptHide Жыл бұрын

    есть kivy, так нет, давайте будем воскрешать tkinter

  • @ps5games821
    @ps5games821 Жыл бұрын

    Сделай пожалуйста программу на питоне с использованием распознавания лица для проходной с графическим интерфейсом

  • @black_grizzly
    @black_grizzly Жыл бұрын

    Кто что думает о киви? Киви или pyqt? Если только начать учить и желательно что - то сделает рабочее)

  • @damirasanov8993
    @damirasanov8993 Жыл бұрын

    третий

  • @zproger

    @zproger

    Жыл бұрын

    😎😎

  • @ko-prometheus
    @ko-prometheus Жыл бұрын

    Привет. Как написать код на Python, программу, которая позволить банить определенные каналы на ЮуТубе??

  • @zproger

    @zproger

    11 ай бұрын

    А зачем это делать?

  • @ko-prometheus

    @ko-prometheus

    11 ай бұрын

    @@zproger Юутуб, постоянно подсовывает каналы, которые я не хочу смотреть!! Я скачиваю какие то расширения для браузеров типа банить каналы. Но они не работают. Вроде забанишь, а на следующий раз они опять повылазили, каналы... Надо найти способ на рыжегоеврея который владеет Юутубом, что бы он нам, мне не навязывал свои взгляды!!

  • @zproger

    @zproger

    11 ай бұрын

    Есть опенсурс проекты, которые отключают реки ютуба + вроде как можно исключать их из выдачи, но это нужно смотреть на гитхабе, я уже забыл как они называются

  • @torburgmax

    @torburgmax

    8 ай бұрын

    @@ko-prometheus а в чем проблема нажать правой клавишей на менюшку около видео ненужного канала и выбрать "не предлагать канал"?)

  • @sol1arisgd
    @sol1arisgd Жыл бұрын

    Интерфейс как в MacOS

  • @zproger

    @zproger

    Жыл бұрын

    Я сходства не заметил :0

  • @anton-18
    @anton-18 Жыл бұрын

    Очень плохо что пайтон не многопоточний

  • @hinomuratomisaburo4901
    @hinomuratomisaburo4901 Жыл бұрын

    Tkinter плох с асинхронностью (

  • @mcomponent
    @mcomponent Жыл бұрын

    Хотел бы сказать, что в коде библиотеки достаточно много проблем: 1. Статические методы и переменные с ООП - довольно плохая вещь в построении архитектуры приложений. Они нарушают саму суть ООП. 2. Не полная документация и отсутствие единого стиля. Это минорная поправка, в основном нужна для любителей ништяков от IDE, но всё же минус. Также часто нету доки на аргументы. Не у всех функций есть документация вообще. 3. Внутрь pip пакета упаковано вообще всё: дефолтные темы, иконки, шрифты. Извиняюсь, но зачем по дефолту ставить шрифты, которых в системе нет? В чём суть дефолтной иконки CustomTkinter? 4. Код написан явно без знания базовых фич Python. Это в основном прослеживается в тех же неумелых условиях вида if a is True. 5. Глубокое использование словарей. Код создаёт много маленьких и не живущих долго словарей и вложенных словарей, в том числе и для конфигурации. Зачастую можно просто заменить кортежем/датаклассом. 6. Отсутствие принципа SOLID. К примеру, класс Ctk: он и темы получает, и виджетами управляет, и за иконки отвечает. 7. Ещё меньше знания базовых фич: использование if A is None else B для проверки и присвоения, можно заменить на "A or B". 8. Большое количество неразрешённых Issue для сравнительно небольшой библиотеки (на момент написания 191). 9. В неосновных файлах нарушения всех существующих и несуществующих стандартов красивого кода на лицо: длинные строки, несортированные импорты, отсутствие DRY 10. Прямое использование ctypes. 11. Судя по всему исполнение кода через eval: полностью я не разбирался, но в коде ctk_font.py явно присутствует хранение Python кода в строке. И главный вопрос: в чём суть разработки GUI на Python? Python - далеко не тот язык, который хорошо подходит для графических интерфейсов. К тому же, замечу: то, что вы называете красивым GUI - на самом деле просто перегружен, из-за чего такое ощущение и создаётся. На деле же, при попытке использовать что-то подобное пользователь просто умрёт от движения мышкой через весь экран и объёма информации и панелек.

  • @linuxoidovich

    @linuxoidovich

    Жыл бұрын

    Гуи реально красивый.

  • @torburgmax

    @torburgmax

    8 ай бұрын

    а чем статическая переменная нарушает суть ооп?

  • @IvaNFallout
    @IvaNFallout Жыл бұрын

    Писать GUI на питоне то еще извращение, но кому-то нравится

  • @zproger

    @zproger

    Жыл бұрын

    Ну смотря что писать конечно, небольшие софты почему бы и нет

  • @mwave3388
    @mwave3388 Жыл бұрын

    Делал на ткинтере приложение год назад. Не лезьте туда, оно вас сожрет. Лагучая древняя фигня.

  • @zproger

    @zproger

    Жыл бұрын

    Я думал что у меня зависает из-за того что это виртуалка, а оказывается нет)

  • @slkzak

    @slkzak

    Жыл бұрын

    @@zproger У меня более 40 виджетов в приложении обновляются чуть ли не каждую секунду, подвисаний нет. В твоем видео в виджетах значения напрямую ты указываешь text="SomeText", а нужно выводить в отдельные переменные StringVar() и указывать в виджетах через textvariable. Изменяя не сами виджеты, а их переменные с различных частей приложения и других потоков избавляет от лагов и внезапных вылетов интерпретатора.

  • @user-bk7xo4nb5b
    @user-bk7xo4nb5b Жыл бұрын

    Одна реклама....

  • @zproger

    @zproger

    Жыл бұрын

    Реклама чего? VsCode, Линукса, Python и CustomTkinter?) Кроме своего курса ООП тут рекламы никакой нет. Да и она составляет 2м из 18м, я специально вставил тайм-коды, чтобы если это не интересно, то можно было сразу пропустить и дальше смотреть бесплатный контент.

  • @pfr46
    @pfr4611 ай бұрын

    На интерпретируемом языке делать графический интерфейс. Поэтому и полно софта тяжелого и медленного из-за таких "разработчиков".

  • @user-yx3ku2kk2g
    @user-yx3ku2kk2g Жыл бұрын

    Видимо под Linux не доработана библиотека. Кривущие кнопки, отвратительно смотрится. Пример с официального GitHub. Жаль. Под Debian нормально отображаются кнопки, под Mint какая-то шляпа.

  • @stepashka20
    @stepashka20 Жыл бұрын

    Это красиво??? Лол... Лучше разобраться в pyqt, чем в таком старье, да ещё и с отвратным дизайном...

  • @zproger

    @zproger

    Жыл бұрын

    О вкусах не спорят)

  • @noc-yp1pi
    @noc-yp1pi9 ай бұрын

    Я вибачаюсь, а якою це мовою? Чимось схоже на болгарську.

  • @zproger

    @zproger

    9 ай бұрын

    Не понял вопрос

Келесі