Тёмный

Python / Pygame tutorial: Getting text input 

Clear Code
Подписаться 223 тыс.
Просмотров 77 тыс.
50% 1

Опубликовано:

 

25 окт 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 138   
@shourya9998
@shourya9998 4 года назад
This guy is a gifted teacher! I pray for your healthy life
@HiVikas
@HiVikas 4 года назад
3:47 "Now we can see that cant see anything" - Clear Code
@py-gamejam8025
@py-gamejam8025 4 года назад
4:09 "You still can't see anything"
@chingkwanwong4035
@chingkwanwong4035 2 года назад
The explanation is clear and concise ( but 1.25 times is better). A really helpful video.
@adarshkhatri993
@adarshkhatri993 3 года назад
Bro..bro.. bro..... I can't thank you in words, bro you are so awesome and I solved all my doubts
@eannaoreilly7244
@eannaoreilly7244 2 года назад
thank you i couldnt find anyone adressing except you for my project thankyou
@gortilla
@gortilla 2 года назад
if your backspace doesn't work try adding " clear_rect = pygame.Rect(left position, top position, width, height) " by your input_rect declaration and " pygame.draw.rect(screen, white, clear_rect) " beneath your "pygame.draw.rect(screen, color, input_rect, 2)"
@dogushangunduzer
@dogushangunduzer Год назад
Such a clean lecture, master at work, cheers.
@scubing9486
@scubing9486 4 года назад
Good man as expected explained very very very well
@autisticcondom7982
@autisticcondom7982 4 года назад
how can i do it in the way that after writing the text in pygame and pressing enter the input is saved and checked by the program to see if its correct or not
@andreslarrondobuno7630
@andreslarrondobuno7630 Год назад
you explain things so clearly holy shit, thanks
@36nishantchandeleceb25
@36nishantchandeleceb25 2 года назад
Here to add a little bit of extra info If for some reason your new text is overlapping with your previous text Add a line Screen.fill((0,0,0)) After user_text=user_text[:-1]
@BrandonJacobson
@BrandonJacobson 3 года назад
Great tutorial! I'm building a Pygame on my RU-vid channel and I'll be using this. Thanks again!
@aramihovygimenezzarate6497
@aramihovygimenezzarate6497 4 года назад
Congratulations! Its super clear
@omkakatkar9003
@omkakatkar9003 4 года назад
Thanks for the tutorial. It really helped. You deserve more likes
@jaxonwooton2757
@jaxonwooton2757 2 года назад
When I press backspace it just moves back a letter instead of deleting the last one. So when I clicks another key it writes over other text that hasn’t been deleted. Help
@wesleyhaw1806
@wesleyhaw1806 2 года назад
Thanks for the video, it helped me a lot!
@potatokiller8638
@potatokiller8638 4 года назад
how i can down a line, when i press enter?
@nguyendangminh9433
@nguyendangminh9433 4 года назад
use K_RETURN
@shourya9998
@shourya9998 3 года назад
if event.type == pygame.KEYDOWN: if event.key == pygame.K_RETURN: YOURVAR += ' '
@coolfred9083
@coolfred9083 3 года назад
@@shourya9998 I don't think that works, it just makes a missing character which I assume represents _new line_ instead of actually making a new line
@bigboibob2568
@bigboibob2568 3 года назад
Not entirely sure this works nor have I tried it myself yet and I'm probably late anyway but could you print the text to the screen then do the coordinates that the text renders to -1 on the y axis
@shourya9998
@shourya9998 3 года назад
@@bigboibob2568 Yeah that doesn't work it just prints a block, my bad :(
@sylvanfranklin6904
@sylvanfranklin6904 3 года назад
Thanks so much for your tutorials
@shourya9998
@shourya9998 4 года назад
This channel is insane! Subscibed!!!
@michaelsaspri4996
@michaelsaspri4996 2 года назад
Thanks so much just what I needed ..
@senelekiz8979
@senelekiz8979 2 года назад
Very helpful for me. Thank you!
@simplepycodes
@simplepycodes 3 года назад
If i could give you 10 thumbs up i would do it :). very good tutorial.
@skip4496
@skip4496 3 года назад
amazing tutorial, but is there a way of typing in different places and switching between them? if its what u meant by saying "multiple strings are not supported" then sry
@youtuberecommended9183
@youtuberecommended9183 4 года назад
Clear and concise👌🏾
@Eastcoast_Rds
@Eastcoast_Rds Год назад
great tutorial, thank you!
@goofvos
@goofvos 2 года назад
My backspace is not working. If I type something and I press backspace, the characters do not go away, and if i type something again, it overlaps the existing characters
@ivancrescenzi7194
@ivancrescenzi7194 Год назад
I don't know if you still need it, but the problem is that screen.blit(user_text etc ) keeps writing the text above the previous one, so you don't notice that when you use event.unicode, since the program keeps writing the same string you can roughly cover the previous one by drawing a smaller and fully coloured rectangle inside the one that you already have
@David-fq5un
@David-fq5un 6 месяцев назад
double check your code with his. I did it just now, and it works fine.
@cragkarottensalat2293
@cragkarottensalat2293 3 года назад
How can I convert it into a function? because I have real problems with it
@TutorialTube448
@TutorialTube448 2 года назад
convert what into a function?
@ananyatandon6536
@ananyatandon6536 2 года назад
THANK YOU SO MUCH
@Raphy084
@Raphy084 3 года назад
I'm not new with python and pygame but it didn't came to my mind to use "max" for the width of rect. Why I'm always forgetting "max" and "min" function?
@not_a_pythonhehim535
@not_a_pythonhehim535 9 месяцев назад
I was hoping this would give me a way to use the text as an input
@CuppyBFDIAnimation
@CuppyBFDIAnimation 8 месяцев назад
this is nice and all but what about the enter input?
@carmona9835
@carmona9835 2 года назад
very good tutorial
@soupnoodles
@soupnoodles 3 года назад
It would be nice to provide the source code in the description
@trace6585
@trace6585 Год назад
You're supposed to be here to learn, not copy and paste.
@cutiemaltesegucci
@cutiemaltesegucci 4 года назад
How can I make a code that other language letters can be entered? not only the English alphabet but also Korean, Japanese, Chinese
@matthewpolitis5119
@matthewpolitis5119 3 года назад
Hi, It is not stopping how many characters/width is allowed. How can I fix this?
@Anonym-qe2di
@Anonym-qe2di 4 года назад
Awesome! Keep going!
@varunnayak5369
@varunnayak5369 Год назад
Is there any way of being able to manipulate the input within the text box??
@notnanook
@notnanook 4 года назад
Very well made video 👌
@ХуанМатус-х8ю
@ХуанМатус-х8ю 2 года назад
Thank you from Russia
@fatihhamza3259
@fatihhamza3259 4 года назад
thaank you so much ❤❤
@dhruveshgangapuram5755
@dhruveshgangapuram5755 3 года назад
nice way of explaination
@tunaan80
@tunaan80 2 года назад
How I did this before watching this (I still have it like this) is I wrote lines of code to get text input for every single letter, numbers and symbols because I didn't realize event.unicode was a function. And it is a success so I don't want to waste it now -_-
@ancientgear7192
@ancientgear7192 3 года назад
Hello. Can someone help me? How do we set boundaries so that when we type a huge line the box will reshape and the line wont go out of the screen?
@ClearCode
@ClearCode 3 года назад
adding an if statement in there should do the trick quite easily
@jeniswinsta6196
@jeniswinsta6196 2 года назад
Thanks very helpful
@Arpit_Arora
@Arpit_Arora 3 года назад
very nice...to the point
@dawe7081
@dawe7081 2 года назад
this is awesome but when I paste something into it, only a rectange appears. how do I fix this?
@TutorialTube448
@TutorialTube448 2 года назад
what do you mean by the word 'paste' ?
@dawe7081
@dawe7081 2 года назад
@@TutorialTube448 ctrl+v
@TutorialTube448
@TutorialTube448 2 года назад
@@dawe7081 no i know that. I mean what are you trying to paste
@TutorialTube448
@TutorialTube448 2 года назад
And what are you trying to paste it into?
@dawe7081
@dawe7081 2 года назад
@@TutorialTube448 any text. for example I copy "Hello World", I past it and it shows a rectangle. (i am pasting this on the window. I would imagine this should work as if you wrote the entire text you are trying to paste as if you typed it word by word)
@ankushsarkar1746
@ankushsarkar1746 3 года назад
Like ur vibe man
@patriciofernandez6500
@patriciofernandez6500 4 месяца назад
So it's impossible to write kanji, or a word with a vowel with accent like León. 😢
@Arpit_Arora
@Arpit_Arora 3 года назад
Thank you so much sir...
@joaleo6318
@joaleo6318 4 года назад
Nice vid ! But I want to "ask" the user to type his username and print it while my game is playing but I don't know how to do it ... help ?
@abdullahalawad4906
@abdullahalawad4906 4 года назад
If you want to make this while the game is running, you can make a rectangle at the bottom asking for the name and stop all inputs of moving the player and then do the steps in the video. I guess this should work anyway
@Ashersminicartoons
@Ashersminicartoons 4 года назад
You can define a new loop at the end of your program and add this code inside, also add this: if event.key == pygame.K_RETURN: global i i = user_text main() # Your loop's name might be different Then blit the text as the variable i at the start of your main (or other) loop.
@Ashersminicartoons
@Ashersminicartoons 4 года назад
and also instead of calling the main loop at the bottom call the new loop
@akramelomrani8728
@akramelomrani8728 4 года назад
a question please if i just want to have the same with the same width but when the char are too long the just go in it
@zerokun2655
@zerokun2655 3 года назад
i don't know, try drawing a black rectangle on top of the righ side of the text box that goes to the and of the screen, the effect will be the same
@programmertank3029
@programmertank3029 3 года назад
I don't have the 'l' when I run the code
@divyanshsharma3519
@divyanshsharma3519 3 года назад
Hi is there any way I can save the user input in a variable, and then use it to dispaly further in my program?
@benoitkinziki3916
@benoitkinziki3916 3 года назад
Isn't that exactly what he did with his user_input variable
@theyoungcoder7239
@theyoungcoder7239 2 года назад
Which code editor do you use? Pls tell
@adlifiruz808
@adlifiruz808 3 года назад
how do you apply this into classes?
@TutorialTube448
@TutorialTube448 2 года назад
apply the text into classes?
@aadilidreesi3819
@aadilidreesi3819 4 года назад
I am a learner and i just started coding, i am getting an error that (name += event.unicode TypeError: unsupported operand type(s) for +=: 'pygame.Surface' and 'str')
@ClearCode
@ClearCode 4 года назад
You seem to be trying to add a surface to the text, check the line where you render the text, I would guess a wrong variable ended up in there.
@aadilidreesi3819
@aadilidreesi3819 4 года назад
@@ClearCode thanks, i caught my error ,i used same variable for rendering
@emeraldthunder
@emeraldthunder 3 года назад
Thank you.
@gabrielbatista5433
@gabrielbatista5433 4 года назад
Hey I'm having a problem with the colors: "color_active = pygame.color('lightskyblue3') TypeError: 'module' object is not callable" Can anyone help me?
@heyohola3143
@heyohola3143 4 года назад
Hi, try this: color_active = pygame.Color('lightskyblue3') It looks like there is a syntax error. The letter "c" in "pygame.color" has to be uppercase. hope this helps
@umanglunia2194
@umanglunia2194 4 года назад
pygame.Color not color
@TutorialTube448
@TutorialTube448 2 года назад
this is a different way than what you know but it works if you put it in a variable R G B 0, 128, 255 = Lblue 0 , 0 , 255 = blue 0 , 0 , 128 = dblue
@RohanKumar-zd3pc
@RohanKumar-zd3pc 4 года назад
Clear code's the best
@priyanshithoughts7818
@priyanshithoughts7818 3 года назад
Amazing
@aggelosn21
@aggelosn21 4 года назад
good job mate
@hajp
@hajp 3 года назад
How to limit the character count? can you explain on it example? i used this ccde and my rectangle is infinite
@ClearCode
@ClearCode 3 года назад
just add an if statement that measures the length of the string?
@hajp
@hajp 3 года назад
@@ClearCode can you please write it for me :( im a beginner and i just rewrote the code
@ClearCode
@ClearCode 3 года назад
@@hajp around minute 5 on line 15 when it says user_text += event.unicode put it in the if statement -> if len(user_text) < 10
@ClearCode
@ClearCode 3 года назад
I just made up the number 10, chose whatever amount of characters you want
@whack9730
@whack9730 3 года назад
It is saying clock not defined. Is there any way i can fix this
@ClearCode
@ClearCode 3 года назад
define a clock? :P
@Schachlover
@Schachlover 4 года назад
Thanks a lot.
@glitchneon8419
@glitchneon8419 4 года назад
I keep getting the error: line 11, in if event.type == pygame.QUIT(): TypeError: 'int' object is not callable
@ClearCode
@ClearCode 4 года назад
There shouldn't be parenthesis after QUIT, it should be: if event.type == pygame.QUIT:
@glitchneon8419
@glitchneon8419 4 года назад
@@ClearCode ohhhhh, thanks!
@glitchneon8419
@glitchneon8419 4 года назад
​@@ClearCode when I did that, it said: line 16, in text_surface = base_font.pygame.render(user_text,True,(255,255,255)) AttributeError: 'pygame.font.Font' object has no attribute 'pygame'
@ClearCode
@ClearCode 4 года назад
There should not be pygame after the base_font. So just: base_font.render
@akramelomrani8728
@akramelomrani8728 4 года назад
you are awesome
@harshitaramchandani5071
@harshitaramchandani5071 3 года назад
no matter which key I press it displays only 'L'
@TutorialTube448
@TutorialTube448 2 года назад
it is not the code it is your laptop if you followed everything without an mistake.
@jsmcodes
@jsmcodes 3 года назад
What if there are 2 inputs?
@Rajsingh-rs1yi
@Rajsingh-rs1yi 3 года назад
Does anyone know how to make a slider in pygame using classes? I am really struggling with this.
@TutorialTube448
@TutorialTube448 2 года назад
you don't have to believe but pygame is a great module in making sliders, however tkinter (module that you don't need to download in anything because it is part of python) can do a great job in making a slider] Widgets are various controls, such as buttons, labels, scrollbars, radio buttons, and text boxes used in a GUI application. They are also little components or controls of Graphical User Interface (GUI). Pady Puts some space between the button widgets and the borders of the frame and the borders of the root window Pack Is a geometry manager that just basically stacks widgets on top of each other. TKINTER CODE FOR MAKING SLIDERS slider_frame = tk.Frame(root, borderwidth=5, relief=tk.SUNKEN) # -- slider_frame.pack(pady=10) slider = tk.Scale(slider_frame, from_=0.00,# starting point of the range for sliding from.(minimum) to=1.0, and this is the max in the range orient=tk.VERTICAL, for the way it is going to be seen as length=400, -- how long the widget is tickinterval = 0.1, resolution = 0.01, slider.pack()
@Ashersminicartoons
@Ashersminicartoons 4 года назад
I want to put a limit to the characters, does anyone know how to do that?? Also I really need help with this: if input_rect.collidepoint(event.pos): It is giving me this error: AttributeError: 'tuple' object has no attribute 'collidepoint'
@ClearCode
@ClearCode 4 года назад
for the character limit, go with something like if len(user_string) < char_limit: then add the user string and for the error below, it seems that your input_rect variable does not have a rectangle but a tuple, check what you put inside of that.
@Ashersminicartoons
@Ashersminicartoons 4 года назад
@@ClearCode Thanks so much, I figured it out. I put active = False when the rect is more than 250 pixels wide so you can't expand the rect more and you cant type, also I figured out the rect tuple problem, I put input_rect = (WIDTH/2 - 130 , 500, 140, 32) instead of input_rect = pygame.Rect(WIDTH/2 - 130 , 500, 140, 32)
@Ashersminicartoons
@Ashersminicartoons 4 года назад
WIDTH was equal to my screen width
@ClearCode
@ClearCode 4 года назад
@@Ashersminicartoons glad it worked out for you :) Although, do be aware that different characters usually have different widths, so your approach wouldn't limit the character count consistently, just be aware of that.
@RohanKumar-zd3pc
@RohanKumar-zd3pc 4 года назад
You can use the assert statement as try: assert len(user_text) < (limit) : pass except AssertionError: print("Limit exceeded") This is the other way to add limitations.
@turtle8558
@turtle8558 3 года назад
Ahh yes "now we can see that we can't see anything"
@harigopaladamus9481
@harigopaladamus9481 7 месяцев назад
thanks brother haha
@Rajsingh-rs1yi
@Rajsingh-rs1yi 4 года назад
Can you make a tutorial for this using OOP please
@Martin-hj4re
@Martin-hj4re 3 года назад
python isnt ment for object oriented programming. For this there are languages like Java or C
@deathshot9310
@deathshot9310 3 года назад
@@Martin-hj4re it is but you can just choose not to
@ralfwright
@ralfwright 2 года назад
C and OOP? 😂You mean C++?
@autisticcondom7982
@autisticcondom7982 4 года назад
module 'pygame' has no attribute 'render
@ClearCode
@ClearCode 4 года назад
you need to render the font, not pygame itself
@autisticcondom7982
@autisticcondom7982 4 года назад
@@ClearCode thank you
@soltaneloudhabachi4648
@soltaneloudhabachi4648 4 года назад
perfect
@Azurath100
@Azurath100 Год назад
stay in the box: if surface1.get_width() - 10 > input_rect.width: user_txt = user_txt[:-1]
@quangdungtran2005
@quangdungtran2005 2 года назад
👍👍👍👍👍👍
@chaowingchinghongfingshong7880
@chaowingchinghongfingshong7880 3 года назад
can somebody send me the code?
@marrlowne5884
@marrlowne5884 2 года назад
"hi every butt"
@scpf2360
@scpf2360 Год назад
WOW
@Martinko1006
@Martinko1006 5 месяцев назад
Delete key types random character
@RohanKumar-zd3pc
@RohanKumar-zd3pc 4 года назад
what does the flip function do?
@ClearCode
@ClearCode 4 года назад
It reflects a surface
@RohanKumar-zd3pc
@RohanKumar-zd3pc 4 года назад
@@ClearCode ok, Thanks for the amazing video
@apurvakumardani172
@apurvakumardani172 3 года назад
I really think pygame should have some gui widgets.... Else the code gets messed up whipe we make our own widgets..
@TutorialTube448
@TutorialTube448 2 года назад
is that just trying to make your widgets in pygame? and no other module?
@gummybear92
@gummybear92 2 года назад
How do you make the text box understand ?
Далее
Simulating physics in Python
23:21
Просмотров 135 тыс.
Pygame Keyboard Input Tutorial
13:24
Просмотров 22 тыс.
Wait for it 😂
00:19
Просмотров 1,4 млн
Get Text Input in Python/PyGame in 9 mins!
9:14
Просмотров 15 тыс.
How One Line of Code Almost Blew Up the Internet
13:47
Let's Program Doom - Part 1
25:13
Просмотров 445 тыс.
Coding Adventure: Chess
29:22
Просмотров 3,8 млн
PyGame Beginner Tutorial in Python - Adding Buttons
18:55
How to Code (almost) Any Feature
9:48
Просмотров 691 тыс.