问候,
我在使用 PixbufAnimation 的 Gdk.PixbufAnimationIter 时遇到问题。代码是这样的:
Gdk.PixbufAnimation animation = new Gdk.PixbufAnimation(System.IO.Path.Combine([filepath], [filename]));
Gdk.PixbufAnimationIter iter = animation.GetIter([Current Time as IntPtr]);
这是我读到的关于 PixbufAnimation.Iter 的内容:
start_time
是指定为浮点数的开始时间,作为 Pythontime.time()
函数的输出。start_time
标记动画播放的开始。
GTK#没有这个time.time()
功能,我尝试了以下方法:
long StartTime = DateTime.Now.Millisecond;
IntPtr SysTime = new IntPtr (&StartTime);
Gdk.PixbufAnimationIter iter = animation.GetIter(SysTime);
但这似乎并没有始终如一地检索任何时间。由此产生的数字似乎非常随机,并且可能是从内存中的错误地址中提取的(只是猜测,不要引用我的话)。
我还从 PixbufAnimation 的另一个文档中阅读了这一点:
作为一种快捷方式,如果 start_time 为
NULL
,g_get_current_time()
将自动使用 的结果。
但是,编译器拒绝允许NULL
IntPtr 的值。
我还读过“当前时间”仅在您试图弄乱动画时使用,例如使动画显示更快或更慢。
有人可以帮我吗?