PYGLET – 删除插入符号
在本文中,我们将看到如何在Python的 PYGLET 模块中删除插入符号。 Pyglet 易于使用但功能强大的库,用于开发视觉丰富的 GUI 应用程序,如游戏、多媒体等。窗口是占用操作系统资源的“重量级”对象。 Windows 可能显示为浮动区域,也可以设置为填充整个屏幕(全屏)。 Caret 基本上是 pyglet.text.layout.IncrementalTextLayout 的可见文本插入标记。插入符号在文本布局对象的文档位置绘制为单个垂直条。如果标记不是无,它给出当前文本选择的静止结束。删除插入符号意味着从其批次中删除插入符号。并将插入符号与进一步的布局事件断开连接。
我们可以在下面给出的命令的帮助下创建一个窗口和插入符号
# 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
下面是实现
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"
# 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, 50, batch = batch)
# creating a caret
caret = pyglet.text.caret.Caret(layout, color =(255, 255, 255))
# caret to window push handlers
# window.push_handlers(caret)
# on draw event
@window.event
def on_draw():
# clear the window
window.clear()
# draw the batch
batch.draw()
# window push handlers
window.push_handlers(caret)
# key press event
@window.event
def on_key_press(symbol, modifier):
# key "C" get press
if symbol == pyglet.window.key.C:
# closing the window
window.close()
# image for icon
img = image = pyglet.resource.image("logo.png")
# setting image as icon
window.set_icon(img)
# 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"
# 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, 50, batch = batch)
# creating a caret
caret = pyglet.text.caret.Caret(layout, color =(255, 255, 255))
# caret to window push handlers
window.push_handlers(caret)
caret.move_to_point(100, 100)
# 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)
# key press event
@window.event
def on_key_press(symbol, modifier):
# key "C" get press
if symbol == pyglet.window.key.C:
# closing the window
# window.close()
pass
# image for icon
img = image = pyglet.resource.image("logo.png")
# setting image as icon
window.set_icon(img)
# deleting caret object
caret.delete()
# start running the application
pyglet.app.run()
输出 :