python手持弹幕LED滚动字幕

用python的海龟库,做一个类似于微信小程序手持弹幕那样的LED屏幕滚动字幕效果。
在这里插入图片描述

本来是要坐在开发板上的,但开发板上缺了海龟库,烧录一直不成功,就先写了一个能运行在电脑上的程序。
利用键盘的上建、左键、右键控制。废话不多说上代码。
参考博客: link.

from turtle import *
import time

#鼠标监听部分应用pynput


pm=Screen() #新建屏幕对象
pm.bgcolor("black")
pm.setup(600,400) #设宽屏幕的宽度和高度
pm.delay (0)  #设定屏幕延时为0
pm.title("手持弹幕LED滚动字幕")
t = Turtle(visible=False)  # 新建不可见的海龟对象

word=["东大yyds","一起开黑","老师666","黑怕不怕黑","微信:a2766285306","脾气不好",'你瞅啥',"睡觉勿扰","想你的液","what's up!"]
size=[60,90,120] #大小
color = ['white',"red","cyan","yellow","blue"]

#全局性变量
info = word[0]
Size = size[0]
Color = color[0]
a = 0
b = 0
c = 0

def up():
    global a
    if a==9:
        a=0
    else:
        a+=1
    t.penup()
    t.goto(300, -(Size / 2))  # 到最右边去
def left():
    global b
    if b==2:
        b=0
    else:
        b+=1
    t.penup()
    global Size
    Size = size[b]
    t.goto(300, -(Size / 2))  # 到最右边去
def right():
    global c
    if c==4:
        c=0
    else:
        c+=1
    t.penup()
    t.goto(300, -(Size / 2))  # 到最右边去
#def down():
    t.clear()



onkeypress(up,"Up") # 向上
onkeypress(left,"Left")
onkeypress(right,"Right")
#onkeypress(down,"Down")

listen()

#显示文字
def big():
    global info
    global Size
    global Color
    t.penup()
    t.color(Color)  # 设定海龟的颜色为青色15
    t.goto(300, -(Size/2))  # 到最右边去
    # info = "修远少儿编程"
    leftx = -300

    x = len(info)
    print(x)

    while(1):
        while (t.xcor()+x*Size+(x-1)*(Size/3)) > leftx:  # 当海龟的x坐标大于某值时19
            t.clear()  # 清空窗口,如果不清空频繁写字,每次的字就会覆盖在一起
            t.color(Color)
            t.write(info, align='left', font=("楷体", Size, "normal"))
            pm.update()  # 刷新屏幕
            #start()

            time.sleep(0.01)  # 等待0.01秒
            t.setx(t.xcor() - 1)  # 左移一个单位
            info = word[a]
            Size = size[b]
            Color = color[c]
        t.clear() #清空
        t.penup()
        t.goto(300, -(Size/2))

big()

利用onkeypress监听键盘,能改变文字内容,文字大小,文字颜色

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值