Отличный видеоурок, всё очень доходчиво! Код ещё смог немного доработать, получилось шикарно. Автор просто прирождённый педагог, однозначно посмотрю все видеоуроки, а в дальнейшем подумаю о спонсорстве.
Немного помучился с многострочным текстом. Для многострочного ввода стоит использовать виджет *Text* . Настройка фона и шрифта у него как у *Label* . При вставке текста через *insert()* лучше вместо индекса "0" использовать константу *tk.END* . А чтобы ещё полоса прокрутки была, использовать класс ScrolledText `from tkinter.scrolledtext import ScrolledText`
Респект за подачу материала! Вопрос такой: Как организовать запись значения value (то что вводим в entry с клавиатуры) в экселевский файл в конкретную ячейку (библиотека openpyxl) ? Это получается строковое значение.
Привет! Я недавно узнал, что все мобильные приложения оказывается написаны в основном на Java. Было бы круто, если бы ты выпустил серию роликов, про создание какой-либо игры для телефона (на Java). Спасибо :)
Здравствуйте!!! Как реализовать в программе столько полей Entry сколько понадобиться и обработать их так что бы не писать скажем 20 функций под каждый Entry. Ну и Entry менялось на Label с выводом того что лежало в Entry и не терялось после завершении программы. Спасибо.
@@egoroffchannel Я отформатировал код, теперь у меня при клике кнопки показывает ошибку *delete_Entry name.delete(0, 'end') AttributeError: 'NoneType' object has no attribute 'delete' * до этого все кнопки выполняли функции как надо, кнопка get выводил инфу на консоль, delete удалял...как исправить подскажи пожалуйста
@@darul-asar381 Никак, наверно. Писать в две строки. Я решила разобраться, обнаружила, что метод grid превращает любой объект в NoneType, хотя до этого являлись экземплярами какого-то класса. Например: label = tk.Label(win, text='Hello') print(type(label) # выводит А если с методом grid, то уже NoneType А так как get() вызывается у переменной-экземпляра класса, то нельзя изменять её тип. Поэтому вызывается ошибка и нужно писать в две строки (тогда сам объект остается неизменным)
Можете на пальцах объяснить: задачка такая есть 2 виджета entry, необходимо сумму данных 2 этих виджетов отобразить на отдельном виджете. Только начал изучать, никак не пойму суть этой связки
Артем, у меня вопрос. Почему код в таком исполнении не работает? password = tk.Entry(win, show='*').grid(row=1, column=1) AttributeError: 'NoneType' object has no attribute 'get' а в таком все норм password = tk.Entry(win, show='*') password.grid(row=1, column=1) Суть одна и та же. в первом варианте, в одну строчку метод grid подставляем, а во втором случае, просто к переменной тот же метод. Или не одна и та же суть?
А вот если name и grid записать не так, как тут, а в одной строчке, то вроде бы всё это же самое должно быть. Но потом в функции name.get() не работает и ругается. Интересно, почему...
@@egoroffchannel да-да, если написать entry = tk.Entry(win) .grid(row=0, column=1), то выравнивается по сетке правильно, а по кнопке ошибка value=entry.get() AttributeError: 'NoneType' object has no attribute 'get'. Если как у вас в примере применить сетку к entry отдельной строкой, то всё Ок
Пожалуйста админ обрати внимание надо сделать так чтобы когда нажимаешь кнопку меняется фото я понял про кнопку но вот про фото нет нажимаешь и фотки меняются ( народ подскажите пожалуйста)
С нового видео мне приходится создавать новый проект, так как продолжение старого ни возможно, ошибки и прочие, как сделать так что бы в проекте в одном ни приходилось лапатить всё по новой, страницы или листы какие ни знаю, главное что всё то что я делаю сохранялось в одном проекте
Когда я использую get() все как у видео то во-первых оно не видит переменную и подчеркивает ее ну и соотвествено не работает. Куда я его не тыкал и как не тыкал ноль реакции. Вот огибка: File "d:\Users\Desktop\Развлечения\Питон\GUI\stydent.py", line 6, in chekEntryStyd LS = logStyd.get() NameError: name 'logStyd' is not defined
тут задание, вообще не могу понять Сгенерировать случайным образом список из N элементов (элементы должны лежать в диапазоне от 1 до 10). Вывести список на экран не понимаю вообще как составить список из N элементов
Привет. Решил помочь тебе. Если тебя всё ещё интересует твой вопрос, то вот мой вариант решения этого задания: from random import randint #Вызываем библиотеку random. N=int(input()) #Просим ввести значение N(можно заранее написать в коде, например N=15). b=[] #Создаём список и сохраняем в переменную b. for a in range(N): #Создаём цикл, который повториться N раз. b=b+[randint(1,10)] #Прибавляем в список b список состоящий из рандомного числа в диапазоне(1,10). print(b) #Выводим список на экран Вот и всё. Ответь пж, если прочитал.
Почему так мало актива? Ты единственный, кто на ютубе объясняет всё до мелочей.
+. Он входит в мою тройку лудших питонистов
согласен .несправедливо
С каждым уроком комментов все меньше и меньше. Но я смогу дойти до конца! Огромное спасибо!!!!!
Объяснения лучшие, музыка приятная, голос приятный. Благодаря тебе сделал конвертер! Просто лучший
Как обычно всё понятно и очень интересно, в ходе работы сама добавляла то, что хотелось =) большое спасибо!
Спасибо вам большое! Я реально за короткие сроки научился программировать на языке Python. Огромное вам спасибо, продолжайте свою деятельность дальше!
стал программистом?
Лучший в своём деле! и платные курсы то так не объясняют доходчиво!
Спасибо за видео.Очень информативно получилось.Вы хорошо и понятно объясняете.
Великолепные пояснения! Спасибо!
Отличный видеоурок, всё очень доходчиво! Код ещё смог немного доработать, получилось шикарно. Автор просто прирождённый педагог, однозначно посмотрю все видеоуроки, а в дальнейшем подумаю о спонсорстве.
ochen ponyatno i krutoy rolik. spasibo
Спасибо за Ваш труд!
круто, что объяснил rgb, в прошлых уроках, а лямбду в этом нет)
Спасибо за этот туториал!
Комментарий для поддержки канала😊
Спасибо, видео очень помогло мне. Будь активней
Немного помучился с многострочным текстом.
Для многострочного ввода стоит использовать виджет *Text* . Настройка фона и шрифта у него как у *Label* . При вставке текста через *insert()* лучше вместо индекса "0" использовать константу *tk.END* .
А чтобы ещё полоса прокрутки была, использовать класс ScrolledText `from tkinter.scrolledtext import ScrolledText`
Спасибо за хорошие уроки. Продолжай.
Благодарю!
spasiba vam
Респект за подачу материала! Вопрос такой: Как организовать запись значения value (то что вводим в entry с клавиатуры) в экселевский файл в конкретную ячейку (библиотека openpyxl) ? Это получается строковое значение.
Артем, спасибо за видео. Будут ли уроки по flask ? Все таки будущее за браузерными формами. (ввод и вывод информации, кнопки), или django.
да, надо либо фласк либо джанго разобрать
@@egoroffchannel ждем
Супер
спасибо)
Скажи а как увеличить высоту Entry, чтобы сделать подобие окна для ввода текста?
Я правильно понимаю, что во время ввода каких данных в строку entry и после нажатия на кнопку get, данные сохраняются в переменной value?
здравствуй, при координатах “(row=0,column=1)” - (либо других координатах)
ввиджет всеравно призапуске отображаеться как в “(row=0,column=0)”
Привет! Я недавно узнал, что все мобильные приложения оказывается написаны в основном на Java. Было бы круто, если бы ты выпустил серию роликов, про создание какой-либо игры для телефона (на Java). Спасибо :)
Жава фигня, с++ лучше.
iq ниже нуля, языки программирования предназначены для разных задач, твоя мать фигня и моя лучше, даже если ее нету.@@vihgvafy2855
Здравствуйте!!! Как реализовать в программе столько полей Entry сколько понадобиться и обработать их так что бы не писать скажем 20 функций под каждый Entry. Ну и Entry менялось на Label с выводом того что лежало в Entry и не терялось после завершении программы. Спасибо.
Расскажи про bind плииз
УРА Я СОЗДАЛ НОВОЕ ПРИЛОЖЕНИЕ...ТЕПЕРЬ Я ПРОДАМ ЕГО ЗА МИЛЛИОНЫ И УЕДУ ЖИТЬ ЗА ГРАНИЦУ!
Егор, подскажи как отформатировать код? 8:33 и для чего он нужен?
Cntl alt L на винде, для соответствия стандартам pep8
@@egoroffchannel Я отформатировал код, теперь у меня при клике кнопки показывает ошибку *delete_Entry
name.delete(0, 'end')
AttributeError: 'NoneType' object has no attribute 'delete' *
до этого все кнопки выполняли функции как надо, кнопка get выводил инфу на консоль, delete удалял...как исправить подскажи пожалуйста
@@darul-asar381 Никак, наверно. Писать в две строки. Я решила разобраться, обнаружила, что метод grid превращает любой объект в NoneType, хотя до этого являлись экземплярами какого-то класса. Например:
label = tk.Label(win, text='Hello')
print(type(label) # выводит
А если с методом grid, то уже NoneType
А так как get() вызывается у переменной-экземпляра класса, то нельзя изменять её тип. Поэтому вызывается ошибка и нужно писать в две строки (тогда сам объект остается неизменным)
Можете на пальцах объяснить: задачка такая есть 2 виджета entry, необходимо сумму данных 2 этих виджетов отобразить на отдельном виджете. Только начал изучать, никак не пойму суть этой связки
Артем, у меня вопрос. Почему код в таком исполнении не работает?
password = tk.Entry(win, show='*').grid(row=1, column=1)
AttributeError: 'NoneType' object has no attribute 'get'
а в таком все норм
password = tk.Entry(win, show='*')
password.grid(row=1, column=1)
Суть одна и та же. в первом варианте, в одну строчку метод grid подставляем, а во втором случае, просто к переменной тот же метод. Или не одна и та же суть?
Потому что метод в первом варианте вернёт значение None после своего выполнения и это значение запишется в переменную password
@@egoroffchannel спасибо за ответ!
А вот если name и grid записать не так, как тут, а в одной строчке, то вроде бы всё это же самое должно быть. Но потом в функции name.get() не работает и ругается. Интересно, почему...
надо на код взглянуть
@@egoroffchannel да-да, если написать entry = tk.Entry(win)
.grid(row=0, column=1), то выравнивается по сетке правильно, а по кнопке ошибка value=entry.get()
AttributeError: 'NoneType' object has no attribute 'get'. Если как у вас в примере применить сетку к entry отдельной строкой, то всё Ок
@@ИванИванов-ь3м2к Всё равно не помогло
@@inter-348 не знаю, мне помогло
Я вот хотел сделать так чтобы удаляло только последний цифры и сам нашёл решение!
value = name.get()
n = len(value) - 1
name.delete(n)
а как сделать так что бы при вводе пароля и когда нажато отправить если данные верны то закрыть все окна?
надо в кнопке указать команду: tk.Button (win, text = "Ok", command = exit)
А как в Nodepad++ "провалиться" в подсказку команды? Просто я занимаюсь в этом блокноте, а не в IDE.
Здравствуйте, у меня такая ошибка:lb1 = tk.Label(win,text = 'Введите что-то:', stick = 'w').grid(row = 0, column = 0)
Traceback (most recent call last):
_tkinter.TclError: unknown option "-stick"
потому что stick надо вводить в методе grid()
как продолжения или же как отдельная страница но в том же проекте
А как entry превратить в число если нужно ещё записать условие?
Не очень понимаю ваш вопрос, можно поподробнее
@@DEnis_Programm да я уже разобрался
3:10, у меня ругается питон
AttributeError: 'NoneType' object has no attribute 'get'
Как только написал комент, нашел решение, я убрал после вызова Enrty, .grid и перенес на след.строку
@@noisy4418 Спасибо
Пожалуйста админ обрати внимание надо сделать так чтобы когда нажимаешь кнопку меняется фото я понял про кнопку но вот про фото нет нажимаешь и фотки меняются ( народ подскажите пожалуйста)
С нового видео мне приходится создавать новый проект, так как продолжение старого ни возможно, ошибки и прочие, как сделать так что бы в проекте в одном ни приходилось лапатить всё по новой, страницы или листы какие ни знаю, главное что всё то что я делаю сохранялось в одном проекте
Когда я использую get() все как у видео то во-первых оно не видит переменную и подчеркивает ее ну и соотвествено не работает. Куда я его не тыкал и как не тыкал ноль реакции. Вот огибка: File "d:\Users\Desktop\Развлечения\Питон\GUI\stydent.py", line 6, in chekEntryStyd
LS = logStyd.get()
NameError: name 'logStyd' is not defined
тут задание, вообще не могу понять
Сгенерировать случайным образом список из N элементов (элементы должны лежать в диапазоне от 1 до 10). Вывести список на экран
не понимаю вообще как составить список из N элементов
Привет. Решил помочь тебе.
Если тебя всё ещё интересует твой вопрос, то вот мой вариант решения этого задания:
from random import randint
#Вызываем библиотеку random.
N=int(input())
#Просим ввести значение N(можно заранее написать в коде, например N=15).
b=[]
#Создаём список и сохраняем в переменную b.
for a in range(N):
#Создаём цикл, который повториться N раз.
b=b+[randint(1,10)]
#Прибавляем в список b список состоящий из рандомного числа в диапазоне(1,10).
print(b)
#Выводим список на экран
Вот и всё. Ответь пж, если прочитал.
а как удалять Виджеты с помощью кнопок?
Я не знаю, но использую метод place на x -1000 (tk.Entry (win).place (x = -1000))
чтобы это понять, нужно сначала x поставить на 0
как можно так безобразно оформлять программы? тем более в учебном курсе?
Бесполезные функции, абсолютно