zltzlt 发表于 2020-8-9 20:13:35

wxPython -- 显示 GIF 动图

本帖最后由 zltzlt 于 2020-8-9 20:15 编辑

wxPython -- 显示 GIF 动图

wx.adv 包中的 Animation 和 AnimationCtrl 类配合使用可以在窗口上显示 GIF 动图(也就是动画)。

wx.adv.AnimationCtrl 的语法格式如下:

AnimationCtrl(parent, id=wx.ID_ANY, anim=wx.adv.NullAnimation, pos=wx.DefaultPosition, size=wx.DefaultSize, style=wx.adv.AC_DEFAULT_STYLE, name=wx.adv.AnimationCtrlNameStr)

其中:


[*]parent 代表该控件的父窗口
[*]id 代表该控件的 ID,通常保持默认
[*]anim 表示在控件中显示的动画 wx.adv.Animation(filename)(filename 为动图的路径)
[*]pos 为该控件在窗口中的位置 (x, y)
[*]size 为该空间在窗口中的大小 (width, height)
[*]style 为该控件的样式(一般这个参数保持默认)
[*]name 为该控件的名字


创建完一个动画控件后,动图还不会自动播放,得调用 Play() 方法播放动图,想让动图停止播放时可以使用 Stop() 方法。

例如:

import wx
from wx.adv import Animation, AnimationCtrl


class Frame(wx.Frame):
    def __init__(self):
      super().__init__(None, -1, '动画', size=(250, 250))
      panel = wx.Panel(self)
      wx.StaticText(panel, -1, 'Loading...', (20, 10))
      animation = AnimationCtrl(panel, -1, Animation('loading.gif'), pos=(20, 30))    # 创建一个动画
      animation.Play()    # 播放动图


if __name__ == '__main__':
    app = wx.App()
    Frame().Show()
    app.MainLoop()

loading.gif 文件如下:



程序执行效果:

hrp 发表于 2020-8-9 20:14:44

支持一下

zltzlt 发表于 2020-8-9 20:15:00

hrp 发表于 2020-8-9 20:14
支持一下

感谢{:10_281:}

weiter 发表于 2020-8-9 21:58:10

Tkinter可以做这样的效果吗?

悠悠2264 发表于 2020-8-10 10:07:40

本帖最后由 悠悠2264 于 2020-8-10 10:08 编辑

支持{:7_146:}

可以搞成模块文档{:10_256:}

闲鱼君 发表于 2020-8-10 11:10:00

{:7_146:}

Dueser 发表于 2020-8-10 12:58:42

现在还完全看不懂

小小小菜菜菜 发表于 2020-8-10 20:24:02

手动点赞

hornwong 发表于 2020-8-10 20:31:54

{:5_95:}

hornwong 发表于 2020-8-10 21:58:03

{:5_95:}

雅莉雅莉雅 发表于 2020-8-10 22:36:55

资瓷

leshang 发表于 2020-8-11 21:56:38

支持,虽然现在看不懂

Hello. 发表于 2020-8-11 22:08:34

迟到{:7_114:}

zltzlt 发表于 2020-8-11 22:14:18

Hello. 发表于 2020-8-11 22:08
迟到

{:10_297:}没事

446940382 发表于 2020-8-11 22:29:46

差点给我整懵了~抛砖引玉

13691255250 发表于 2020-8-11 23:50:45

这动图是一直加载的图标吗0.0还是我网卡了

象棋爱好者 发表于 2020-8-12 13:16:02

送鱼币?

fangyunquan 发表于 2020-8-12 13:17:08

送鱼币

fangyunquan 发表于 2020-8-12 13:18:12

一个人只要还有奖励,最多可以领十次

胡鸣谦 发表于 2020-8-14 10:39:59

Hello. 发表于 2020-8-11 22:08
迟到

!!
页: [1] 2 3
查看完整版本: wxPython -- 显示 GIF 动图