PYGLET – On Text Motion Select Event

In this article we will see how we can trigger on text motion select event 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). The user moved the text input cursor while extending the selection. Typically this is called after on_key_press() and before on_key_release(), but may also be called multiple times if the key is help down (key repeating). We should always use this method for responding to text selection events rather than the raw on_key_press(), as different platforms have different default keyboard mappings, and key repeats are handled correctly.

We can create a window with the help of command given below

pyglet.window.Window(width, height, title)

Below is the syntax of the on text motion, this method get called when this event is triggered

def on_text_motion_select(motion):
    print("Motion Selected")

Below is the implementation





# 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 = "GeeksforGeeks"
# creating a label with font = times roman
# font size = 36
# aligning it to the centre
label = pyglet.text.Label(text,
                          font_name ='Times New Roman',
                          font_size = 36,
                          x = window.width//2, y = window.height//2,
                          anchor_x ='center', anchor_y ='center')
new_label = pyglet.text.Label(text,
                          font_name ='Times New Roman',
                          font_size = 10,
                          x = 25, y = 25)
# on draw event
def on_draw():    
    # clearing the window
    # drawing the label on the window
# key press event    
def on_key_press(symbol, modifier):
    # key "C" get press
    if symbol == pyglet.window.key.C:
        print("Key C is pressed")
# on text motion select event
def on_text_motion_select(motion):
    # prinitng message
    print("Motion Selected")
# image for icon
img = image = pyglet.resource.image("logo.png")
# setting image as icon
# start running the application


Output :

Attention geek! Strengthen your foundations with the Python Programming Foundation Course and learn the basics.

To begin with, your interview preparations Enhance your Data Structures concepts with the Python DS Course.

My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using or mail your article to See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.

Article Tags :

Be the First to upvote.

Please write to us at to report any issue with the above content.