PYGLET – Deleting Caret

In this article we will see how we can delete caret in PYGLET module in python. Pyglet is easy to use but powerful library for developing visually rich GUI applications like games, multimedia etc. A window is a “heavyweight” object occupying operating system resources. Windows may appear as floating regions or can be set to fill an entire screen (fullscreen). Caret is basically visible text insertion marker for pyglet.text.layout.IncrementalTextLayout. The caret is drawn as a single vertical bar at the document position on a text layout object. If mark is not None, it gives the unmoving end of the current text selection. Deleting caret means removing the caret from its batch. and disconnecting the caret from further layout events.
We can create a window and caret with the help of commands given below 
 
# creating a window window = pyglet.window.Window(width, height, title) # creating a caret caret = pyglet.text.caret.Caret(layout, color=(255, 255, 255))
In order to create window we use delete method with the caret object
Syntax : caret.delete()
Argument : It takes no argument
Return : It returns None
Below is the implementation 
 
Python3
| # importing pyglet moduleimportpygletimportpyglet.window.key# width of windowwidth =500# height of windowheight =500# caption i.e title of the windowtitle ="Geeksforzambiatek"# creating a windowwindow =pyglet.window.Window(width, height, title)# text text ="Welcome to zambiatek"# batch objectbatch =pyglet.graphics.Batch()# creating documentdocument =pyglet.text.document.FormattedDocument(text)# setting style to the documentdocument.set_style(0, len(document.text), dict(font_name ='Arial', font_size =16, color =(255, 255, 255, 255)))# creating a incremental text layoutlayout =pyglet.text.layout.IncrementalTextLayout(document, 400, 50, batch =batch)# creating a caretcaret =pyglet.text.caret.Caret(layout, color =(255, 255, 255))# caret to window push handlers# window.push_handlers(caret)# on draw event@window.eventdefon_draw():        # clear the window    window.clear()        # draw the batch    batch.draw()        # window push handlers    window.push_handlers(caret)    # key press event    @window.eventdefon_key_press(symbol, modifier):    # key "C" get press    ifsymbol ==pyglet.window.key.C:                # closing the window        window.close()    # image for iconimg =image =pyglet.resource.image("logo.png")# setting image as iconwindow.set_icon(img)# importing pyglet moduleimportpygletimportpyglet.window.key# width of windowwidth =500# height of windowheight =500# caption i.e title of the windowtitle ="Geeksforzambiatek"# creating a windowwindow =pyglet.window.Window(width, height, title)# text text ="Welcome to zambiatek"# batch objectbatch =pyglet.graphics.Batch()# creating documentdocument =pyglet.text.document.FormattedDocument(text)# setting style to the documentdocument.set_style(0, len(document.text), dict(font_name ='Arial', font_size =16, color =(255, 255, 255, 255)))# creating a incremental text layoutlayout =pyglet.text.layout.IncrementalTextLayout(document, 400, 50, batch =batch)# creating a caretcaret =pyglet.text.caret.Caret(layout, color =(255, 255, 255))# caret to window push handlerswindow.push_handlers(caret)caret.move_to_point(100, 100)# on draw event@window.eventdefon_draw():        # clear the window    window.clear()        # draw the batch    batch.draw()        # caret to window push handlers    window.push_handlers(caret)    # key press event    @window.eventdefon_key_press(symbol, modifier):    # key "C" get press    ifsymbol ==pyglet.window.key.C:                # closing the window        # window.close()        pass    # image for iconimg =image =pyglet.resource.image("logo.png")# setting image as iconwindow.set_icon(img)# deleting caret objectcaret.delete()               # start running the applicationpyglet.app.run()      | 
Output : 
 
 
				 
					



