En este artículo, veremos cómo podemos crear un objeto controlador de estado clave en el módulo PYGLET en python. Pyglet es una biblioteca fácil de usar pero poderosa para desarrollar aplicaciones GUI visualmente ricas como juegos, multimedia, etc. Una ventana es un objeto «pesado» que ocupa los recursos del sistema operativo. Las ventanas pueden aparecer como regiones flotantes o pueden configurarse para llenar una pantalla completa (pantalla completa). La clase de controlador de estado clave es un controlador simple que rastrea el estado de las teclas en el teclado. Si se presiona una tecla, este controlador tiene un valor verdadero para ella.
Podemos crear una ventana con la ayuda del comando que se indica a continuación.
# creating a window window = pyglet.window.Window(width, height, title)
Para crear una ventana, usamos el método pyglet.window.key.KeyStateHandler
Sintaxis: pyglet.window.key.KeyStateHandler()
Argumento: no requiere ningún argumento
Retorno: devuelve el objeto KeyStateHandler
A continuación se muestra la implementación.
Python3
# importing pyglet module import pyglet import pyglet.window.key # width of window width = 500 # height of window height = 500 # caption i.e title of the window title = "Geeksforgeeks" # creating a window window = pyglet.window.Window(width, height, title) # text text = "Welcome to GeeksforGeeks Have a nice day" # batch object batch = pyglet.graphics.Batch() # creating document document = pyglet.text.document.FormattedDocument(text) # setting style to the document document.set_style(0, len(document.text), dict( font_name ='Arial', font_size = 16, color =(255, 255, 255, 255))) # creating a incremental text layout layout = pyglet.text.layout.IncrementalTextLayout( document, 400, 350, batch = batch) # making layout to display multiline layout.multiline = True # creating a caret caret = pyglet.text.caret.Caret(layout, color =(255, 255, 255)) # caret to window push handlers window.push_handlers(caret) # setting caret style caret.set_style(dict(font_name ="Arial")) # on draw event @window.event def on_draw(): # clear the window window.clear() # draw the batch batch.draw() # caret to window push handlers window.push_handlers(caret) # creating a key state handler key_handler = pyglet.window.key.KeyStateHandler() # key press event @window.event def on_key_press(symbol, modifier): # key "C" get press if symbol == pyglet.window.key.C: # printing the message print("Key : C is pressed") # image for icon img = image = pyglet.resource.image("gfg.png") # setting image as icon window.set_icon(img) # start running the application pyglet.app.run()
Producción :
Key : C is pressed Key : C is pressed
Publicación traducida automáticamente
Artículo escrito por rakshitarora y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA