如何使用WPF动画化单词重建过程

本文关键字:单词 重建 过程 动画 何使用 WPF | 更新日期: 2023-09-27 17:57:28

我有一个单词和它的子单词列表。有可能展示这个单词是如何从它的子单词中编译出来的吗?

换句话说,我想以以下方式动画化重建过程:
1.单词="abcc"
2.子单词列表={"ab","bc","cc"}
3.在第一步中,显示子单词"ab"
4.接下来,子单词列表中的"bc"高亮显示,并用前一个子单词中的"b"代替,因此屏幕上现在有"abc"
5.之后,"cc"突出显示并替换"abc"中的字母"c"
6.总而言之,现在屏幕上有"abcc"

我应该如何处理这个问题?我将使用这个(文本框文本颜色动画)解决方案来更改最终单词中不同部分的颜色,但我不理解动画过程中其他部分的方法。顺便问一下,在重建过程中,我能不能也显示子词和词之间的线条?

如何使用WPF动画化单词重建过程

您可以尝试将字符串转换为一个char数组,然后循环它,将每个char递增到您想要显示的位置,同时用线程暂停它。睡眠几毫秒:

string a = "Hello World!";
char[] b = a.ToCharArray();
for (int i = 0; i < b.Length; i++)
{
   textblock1.Text+=a[i];
   Thread.Sleep(100);
}

我忘了提的是,一定要在一个单独的线程上创建这个函数,否则你的应用程序正在等待循环结束,这对用户来说似乎是应用程序挂起了。

根据我的示例代码的当前状态,字符串中包含的每个字符的应用程序都会挂起100毫秒,这将损失1秒和200毫秒。